Mohammad Nazmur Rahman Emon
HomeAboutSkillsProjectsExperienceBlogContact
Building an ESP32 Gree AC IR Remote with Custom PCB and Web UI
IoT·May 8, 2026· 4 min read

Building an ESP32 Gree AC IR Remote with Custom PCB and Web UI

A practical build note on making a Wi-Fi based Gree AC remote using ESP32, IR LEDs, custom PCB design, and a browser control panel.

ESP32Gree AC RemoteIR RemotePCB DesignIoT

Why I built this

In many homes and labs around us, air conditioner remotes go missing, buttons become weak, or the IR signal becomes unreliable. I wanted to build something more useful than a normal replacement remote: a small ESP32 based device that can sit near the AC and accept commands from a browser. For a Gree AC this is especially interesting because the remote state is not just one button. Temperature, mode, fan, swing, display, turbo, sleep, eco and power all have to feel connected.

This project became a mix of embedded firmware, IR signal control, PCB design and web interface design. It is one of those builds where the product looks simple from outside, but the internal details teach a lot.

Hardware idea

The main controller is an ESP32-WROOM-32. I used IR LEDs for transmission, an IR receiver for testing and capture, physical buttons for local input, and status LEDs for quick feedback. The custom PCB also includes the power input and 3.3 V regulation section.

The board went through three useful stages: schematic, 3D PCB preview, and real fabricated board. I always like this flow because the 3D preview catches many small mistakes before soldering. Connector direction, button access, LED placement and USB clearance all become easier to judge when the board is visible as a physical product.

Firmware and web UI

The firmware hosts a local web page and listens for user actions. The page is designed like a real Gree remote, not like a random list of buttons. That matters because a remote is a state machine. If the display says 24 C, auto mode, fan auto and display light on, the next IR command should represent that full state.

The ESP32 receives the browser command, updates internal AC state, then drives the IR LED output. During testing, the IR receiver and LEDs helped verify that the signal path was alive before depending fully on the AC response.

What was difficult

The difficult part was not only making an IR LED blink. The challenge was making the device feel like a product. The web UI had to be understandable. The board needed clean routing. The IR output needed proper direction. The power section needed to stay stable. In a small PCB, every connector and LED placement matters.

Another lesson was that browser based embedded tools should be simple. In South Asian homes, many users may not want a complicated app install process. A local IP web page is often enough for a prototype because anyone on the same network can test it quickly.

Result

The final prototype includes a working PCB, assembled hardware, IR test module, and browser remote interface. It is ready for future upgrades such as scheduling, MQTT, Home Assistant support, enclosure design and command feedback through IR decoding.

For me, this project is a good example of practical embedded product thinking: start from a daily problem, build the electronics, make the interface human, then keep improving the reliability.

© 2025, Nazmur Rahman Emon