
Controlling My A/C with a Gameboy - cheeaun
http://jg.sn.sg/ir/
======
pseudosudoer
Reverse engineering IR remotes, and implementing them into my own projects has
been an interest of mine for the past few embedded projects I worked on at
home. The hardware overhead for getting a wireless IR transceiver working is
basically nothing, and there's something especially pleasing about requiring
line-of-sight for accurate transmission. The novelty of line-of-sight works
especially well for game-based projects!

------
p1mrx
I just got some new air conditioners for the shelter-in-place summer, and I'd
like to control them from a central thermostat, but it's annoying that the
remote sends "next mode" or "toggle power", with no way to jump to a known
state.

The cool/fan/dehumidify/heat mode is indicated with a vertical column of LEDs
(EdgeStar AP14001HS), so I can probably stick a photocell at the top, and have
a program repeatedly send "mode" while watching the brightness level, to
deduce the state and stop on the correct one. The fan speed uses a different
column of LEDs, but stopping on "dehumidify" forces the fan to low. The
temperature can be set blindly because it stops at the minimum/maximum value.

I haven't actually tried to build anything yet, but it at least seems possible
using a Raspberry Pi with 1 analog photocell and 1 IR transmitter.

~~~
bobf
Unless you really want to dive into building it for fun, check out the Sensibo
Sky. If your unit is compatible, I think that's the way to go. I honestly
think they're slightly overpriced for what they are, even on sale, but I've
also bought 4 and have been very happy.

Basically you get all the control/features you want by app or API, based on
the unit's thermostat and hygrometer. Remote control, scheduling, auto on/off
based on your location if you want that, and the big thing for me:
programmable event control with any settings (cool/dry/fan at X degrees and Y
strength/angle).

I mostly use the temperature based on/off programability because that feels
the most like a traditional central air to me. I usually do: "when temperature
is >24C, turn unit on to cool 20C medium fan strength" and "when temperature
is <23C, turn unit off".

~~~
p1mrx
How does Sensibo handle the state synchronization problem? I would happily pay
for something that works, but throwing state-dependent IR codes into the void
is a recipe for pain.

------
Timpy
I was recently toying with the idea of hacking on my old Gameboy Color, I'm
excited to see this on the front page. Has anybody else had some positive
experiences hacking their GBC?

------
lostgame
These are the types of articles I come here for. Fantastic work, and thanks
for all the detail in the article!

------
jbergknoff
This is amazing! I'd be interested in more details about capturing the IR
signal, both by the invasive method and the "operate an LED in reverse"
method.

At one point I thought about trying to do something similar with my old garage
door opener, but ended up not pursuing it.

~~~
soylentcola
You can get cheap USB IR receivers specifically made for capturing the IR
"codes" of remote controls for adding to third party remote control systems.

I've used them at work in the past for setting up touch panels, etc. to
control older equipment like DVD players and TV displays. Point remote at IR
receiver, push "power" button on remote, record the string for "power on",
then program your control surface to send that same set of pulses via IR
emitter when you push the software button for "power on" on the touch screen.

You can build something like this as well:

[https://www.instructables.com/id/How-to-Capture-Remote-
Contr...](https://www.instructables.com/id/How-to-Capture-Remote-Control-
Codes-Using-an-Ardui/)

~~~
nonamenoslogan
I have a Casio CMD-30 that can ‘learn’ codes; its a fun watch.

------
beamatronic
“National” brand is Panasonic. At least this is true for rice cookers.

------
AdmiralAsshat
I always thought it was kind of a bummer that so few games leveraged the
Gameboy Color's IR.

AFAIK, the only game that did anything with it was Pokemon Gold/Silver and
their "Mystery Gift" trading feature.

~~~
frosted-flakes
The 3DS has an IR port, but almost nothing used it. Again, except Pokémon,
which uses it for local trading/battling, presumably for at competitions when
there would be too many people for wireless (that's what I found in a Google
search).

------
matheusmoreira
Awesome. I had a smartphone with an IR emitter once. Tried using it to control
my air conditioners but for some reason it couldn't do what this Game Boy can
do.

------
amelius
Cool, but receiving an IR signal is a bit trickier than sending it.

------
butz
Why are you using gifs instead of HTML5 video? Not only they take a long time
to download for visitors, but you are using up your server resources too.

------
seibelj
Now THIS is Hacker News!

------
derefr
Gameboys are neat, but I'm kind of sad that people are _still_ mostly focused
on hacking on the wimpy-microcomputing tech of 30 years ago. Nobody seems all
that interested in hacking on the wimpy-microcomputing tech of today! (Well,
except Arduinos—but is it still hacking if that's what they're _for_?)

Imagine what can you accomplish by writing custom firmware for modern IoT
devices, e.g.

• a smart thermostat (Nest et al)

• a smart speaker

• a smart remote (Harmony et al)

Another very under-explored device category is the Shenzhen knock-off portable
game console (not the Bittboy; the cheap stuff.) These sometimes have
surprisingly good hardware in them, but only use it to run (bad!) emulators
that don't take full advantage of the CPU power / memory capacity / screen
resolution / etc. Native code could get a lot done on these platforms!

~~~
non-entity
Not sure how complex modern IoT devices, but I tried to get started hacking
around in larger platforms, and it seemed impossible to get into. I wouldn't
be shocked if these companies make it damn near impossible to hack around in
these devices (for a hobbyist at least). Especially given how worried people
get regarding IoT and security.

~~~
strbean
I spent a truly obscene amount of time trying to just figure out how to make a
DIY smart speaker discoverable to Alexa / Google Home / etc.

The discoverability of the documentation was varying degrees of deplorable,
mostly with a heavy slant towards funneling you into end user docs. In the end
all I found was how to write little voice apps. I know these smart assistants
have standard interfaces for many kinds of devices. I just don't know where
the hell the docs are for those interfaces.

~~~
mschuster91
Two things here:

First... you're not the target group for integrating with Alexa, G Home, Siri
and friends; the vendors want (and tbh, probably need) only the "big brands"
such as car makers, Sonos, Sony, Samsung etc., especially as they likely pay a
hefty chonk of money for the privilege of accessing official SDKs and
documentation plus support - they'd feel ripped off if the vendors would give
away all that stuff.

Second: support itself. Assume that you're Google which is _notoriously_
different to get support from a human being. What would you like more to
support: a couple dozen highly skilled developers from huge companies or a
bunch of thousand "hobbyists"? And who will the users blame if their 10 $
gadget doesn't work with Google Home one day, the gadget maker or Google?

tl;dr: we'd all like more open access but as long as Google and friends don't
allow us to pay money to talk to a human able to solve your problems (did I
already mention Google is extremely nasty to get in contact with?) that won't
happen.

~~~
strbean
Totally agreed on point one, I think it is an incredibly sad state of affairs
though.

For point two, I'm pretty desensitized to the sad state of affairs that is
big-player web service support. The phishing vector of "Hi, I'm calling from
Microsoft and need your social security number" is mind boggling. I've had to
tell older family members (including lifelong software developers and tenured
CS professors) that no major tech company would ever let you speak to a real
human to save your life... too many times. I don't see progress happening on
that front for some time, but I don't think that should stop them from giving
us devs the damn docs. And for who the user would blame, I see a few
counterarguments there. First, if I get some weird no-name IOT device, I'm
definitely blaming the maker first if there is a problem. I think most
consumers place a fair amount of trust in the big tech companies, and would
come to the same conclusion. Second, if they want to lock down their
platforms, they could just use the Play Store approach, and require adding a
developer key somewhere and enabling a dev mode on the smarthome device.

