7 ms·
Hijacking infrared to make a dumb device smart
- 4m1r 4y agoThere 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
- OJFord 4y agoThis article is about replacing the IR remote control with an HTTP interface. Are there any bars available on the market that can learn how to pick up such wireless transmissions and respond to their requests?
- acomjean 4y agoI 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. This article is well more sophisticated.
- Raidion 4y agoNot 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.
- tailspin2019 4y agoWhat a superb article. I clicked expecting something about learning/repeating IR codes… but no, this is a level above!
- bitwize 4y agogrug 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.
- deleted 4y ago[deleted]
- chime 4y agoUsing 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.
- ochoseis 4y agoDo 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.
- poofsoda 4y agoYes. 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.
- anonomousename 4y agoIt 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.
- NotYourLawyer 4y agoGood post. Honestly though, I’m more interested in making smart devices dumb. Rip out their Wi-Fi hardware etc.
- jdboyd 4y agoI 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.
- twobitshifter 4y agoFor 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.
- netsharc 4y agohttps://news.ycombinator.com/item?id=25275350 https://news.ycombinator.com/item?id=25275350
- m463 4y agoI've found this to be harder than it seems. 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.
- Larrikin 4y agoI'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.
- _joel 4y agoThere's already tooling to do this, back when MythTV in 2005ish (iirc). Also, this for Youtube. It's enabled on StreamNextTube and works a charm https://sponsor.ajay.app/ https://sponsor.ajay.app/
- jiayo 4y agoMythTV 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.
- beepscore 4y agoNeat 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. https://beepscore.com/website/2019/04/21/automatically-detecting-television-commercials.html https://beepscore.com/website/2019/04/21/automatically-detec...
- gh02t 4y agoThe 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...
- duiker101 4y agoAmazing article! The next step is to create an automation script to navigate the menus and selecting the content you want! Also, thanks to this article I learned of wokwi which is amazing!!
- dopamean 4y agoI 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!
- korse 4y agoReally nice write up! 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!
- blockarchitech 4y agoThat's actually really cool. I have a polk soundbar, which already does have a IR remote, but it doesn't actually do anything...
- beepscore 4y agoI 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. https://beepscore.com/website/2019/02/05/network-enabled-raspberry-pi-tv-remote-control.html https://beepscore.com/website/2019/02/05/network-enabled-ras...
- celowsky 4y agoI did something similar. It seems a bit easier to set up honestly.
- stuaxo 4y agoSo the remote was outputting something to the RGB LED every time you press a button ... why did they do that ?
- Gordonjcp 4y ago> 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. "Gosh that sounds like our LG" <looks at pics> "Of course it's a fucking LG."
- Arrath 4y agoI'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.
- ragingroosevelt 4y agoI'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.
- cassepipe 4y agoThis 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.
- ArchOversight 4y agoPUT can be used from XMLHttpRequest as well as fetch() and allows you to build a REST API using JavaScript.
- jhugo 4y agoBrowsers 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. [0] https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-method https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fo...
- slicktux 4y agoGreat write up! I probably would have used an ESP8266 or similar… Love the use of simulation!
- girvo 4y agoNot 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! https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/rmt.html https://docs.espressif.com/projects/esp-idf/en/latest/esp32/... https://github.com/Lucas-Bruder/ESP32_LED_STRIP/blob/master/components/led_strip/inc/led_strip/led_strip.h https://github.com/Lucas-Bruder/ESP32_LED_STRIP/blob/master/...