grug love dumb devices. not only understandable by grug brain, simple design help trap complexity demon. when it come to devices around home -- tv, thermostat, etc. -- complexity demon only make things worse. plus hide more insidious demons, like spyware demon, etc.
Using Pico to get state from LED lights is ingenious. Mad props! If you just want to control infrared devices and set their state without first reading their state (like any standard IR remote), looking into BroadLink RM4 Mini. Works with almost everything I've thrown at it.
Do those work with mini split AC units? They have really odd remotes, but they’re IR. We have some Fujitsu halcyon units I would love to control over the web.
Yes. I have a Mitsubishi mini split and my broadlink (RM3, but effectively the same from an IR standpoint) is able to transmit codes. I did have to train the broadlink unit, which basically consists of putting it into a “learn” mode and then pressing the desired button on the mini split remote.
It depends - some units broadcast individual commands to turn up/down temp, so those would be easy. Some units broadcast the entire state every time you press the button though (normally remotes with an display on them), so recoding the remote would just give you a state to cycle through. You may be able to find just the individual temperature commands on remotecentral.com or other places online by searching “Pronto Code database” - those can be converted to whatever format you need.
I find it easier to start with a dumb device. However as that increasingly looks not so possible for TVs, I'd love to see somebody document the process for what you propose.
For the most part, don’t connect to Wi-Fi and use hdmi in. If you’re one of the lucky few with a tv that will wardrive your neighborhood looking for open networks, find the Wi-Fi chip and pull it off.
I've had thoughts of a project for making my TV smart but never got started on it.
I think developing a ML vision model for detecting commercials during sporting events or detecting YouTube ads and when the skip ads button appears would be a fun and not too complicated project.
But connecting it to hardware with an infrared remote seemed significantly harder and this project confirms my worry.
It might still be possible in software with a software Roku remote, I briefly looked into what it takes to write apps on there and was able to control my Roku over WiFi. But would be nice to not have to depend on it.
MythTV commercial skipping was absolutely magical. I understand at a high level how they did it; there are lots of obvious heuristics you can use for this (black detection, silence detection, observing the CBS logo/bug going away, etc.) I also find it fascinating that this was never described as "AI" back in the day; today it would 100% be.
Neat project! I used Python Dejavu to recognize audio from a library of known commercials.
A more general commercial detector via a ML model would be great!
When a commercial is detected, the program sends a http request to a local server running on a Raspberry Pi.
The Pi has an infrared remote control transmitter, and uses LIRC to send commands to a Polk sound bar.
The ESP32 has a built in infrared decoder/encoder, I wonder if you could just skip the intended IR LED that it's supposed to drive and just wire it directly to the receiver pins on the target device with an appropriate resistor. That's the same thing going on here except using the PIO (which was cool to see explained and makes me want to play with the 2040W) and I have an air purifier I kinda want to smarten up...
I find posts like this inspirational. The explanation makes me feel like I could have done this despite lacking a lot of knowledge about the hardware. Thanks for sharing!
There are many bars available which have remote control learning.... e.g Yamaha YAS-306. Its just 2-3 mins job and you dont have to do these hacks. I have one from early 2000s which works perfect.y
I think this was a comment on the fact that many stereo components were sold with remote receivers but no remotes.
I have memories a bunch of in the late 80s going to our electronics store so my brother could program our new programmable remote so we use it could use it with our cd player.. so sneaky we were.
Not crapping on this project because it's hella awesome, but a more scalable solution (which might not be worth it at all) would be to make a HTTP interface to a remote control, then have the remote control beam IR signals at whatever. This would mean that for any new device you add, you just have to pair the remote instead of wiring up another Pi to it.
I've done something very similar with infrared controlled Hexbug battle bot toys.
It was a pretty interesting exercise but in the end cutting a few traces and sending commands directly from a piggyback micro-controller to the motor drivers was much more responsive (and allowed for differential steering and braking).
This article is sick because now I feel like the approach wasn't a complete waste of time. Thanks!
I made a local server running on a Raspberry Pi.
The Pi has an infrared remote control transmitter, and uses LIRC to send commands to a Polk sound bar.
> It does have a problem however, the TV tends to hit resonance frequency very often with its built-in speakers, causing the body of the unit to vibrate something awful and produce some ear wrenching sounds as a result.
I'd never seen these circuit/code/breadboard emulator/visualizer widgets, those are very cool and help illustrate the article along with the code snippets, love it.
I'd been thinking of trying something similar (but with much less experience) for my Dikon heatpump rather than paying the $300 / indoor unit cost for the official iot solution. I wonder if someone has already done this for the Daikon, too.
This has no bearing on the project but since I am implementing a toy server I am wondering about the choice of the PUT method. I thought that it was mostly unused (browser don't send PUT requests) and was replaced by POST request most of the time.
Browsers will happily send any standard HTTP method including PUT. HTML forms always produce a GET or POST [0], but nowadays most requests are probably made with fetch() etc, not HTML forms.
Not quite the same thing, but it still amuses me that we use the infrared Remote Control Tranceiver driver and hardware in the ESP32 to generate LED strip PWM signals!
39 comments
[ 0.20 ms ] story [ 86.5 ms ] threadI clicked expecting something about learning/repeating IR codes… but no, this is a level above!
I had a tesla gen3 wall charger. I updated it and .. crap ... it created a wifi access point that I did not want and would not go away.
so I decided to disconnect the external antenna. unplug the mmcx connector and easy peasy disconnected.
...and the wifi board switched to its internal antenna which was just about as strong.
so I thought... Hmmm.. maybe I can add a dummy load. I wired up an mmcx->rp-sma wire plus a dummy load.
same thing. It may choose the strongest input? or do diversity?
I've now been thinking of downgrading the firmware.
I think developing a ML vision model for detecting commercials during sporting events or detecting YouTube ads and when the skip ads button appears would be a fun and not too complicated project.
But connecting it to hardware with an infrared remote seemed significantly harder and this project confirms my worry.
It might still be possible in software with a software Roku remote, I briefly looked into what it takes to write apps on there and was able to control my Roku over WiFi. But would be nice to not have to depend on it.
Also, this for Youtube. It's enabled on StreamNextTube and works a charm https://sponsor.ajay.app/
When a commercial is detected, the program sends a http request to a local server running on a Raspberry Pi. The Pi has an infrared remote control transmitter, and uses LIRC to send commands to a Polk sound bar.
https://beepscore.com/website/2019/04/21/automatically-detec...
Also, thanks to this article I learned of wokwi which is amazing!!
Are there any bars available on the market that can learn how to pick up such wireless transmissions and respond to their requests?
I have memories a bunch of in the late 80s going to our electronics store so my brother could program our new programmable remote so we use it could use it with our cd player.. so sneaky we were.
This article is well more sophisticated.
I've done something very similar with infrared controlled Hexbug battle bot toys.
It was a pretty interesting exercise but in the end cutting a few traces and sending commands directly from a piggyback micro-controller to the motor drivers was much more responsive (and allowed for differential steering and braking).
This article is sick because now I feel like the approach wasn't a complete waste of time. Thanks!
https://beepscore.com/website/2019/02/05/network-enabled-ras...
"Gosh that sounds like our LG"
<looks at pics>
"Of course it's a fucking LG."
[0] https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fo...
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/...
https://github.com/Lucas-Bruder/ESP32_LED_STRIP/blob/master/...