MH18FBG-R
AI

The **MH18FBG-R** is an **infrared (IR) receiver module** typically used in remote control systems. These components are designed to receive infrared signals from a remote control (like a TV remote), demodulate them, and output a clean digital signal that a microcontroller (like Arduino or ESP32) can process.
---
## 1. Technical Specifications
Below are the typical electronic characteristics of the MH18FBG-R module:
| Parameter | Value |
| :--- | :--- |
| **Carrier Frequency** | 38 kHz (Standard for most remotes) |
| **Operating Voltage** | 2.7V to 5.5V DC |
| **Current Consumption** | ~0.5 mA to 1.5 mA |
| **Reception Distance** | Up to 15–20 meters |
| **Reception Angle** | ±45 degrees |
| **Output Logic** | Active Low (pulses low when IR is detected) |
---
## 2. Pinout Configuration
The module generally features three pins. Looking at the sensor side (the "bulb" side) from left to right, the standard configuration is:
1. **OUT (Signal):** Outputs the demodulated digital signal to the microcontroller.
2. **GND (Ground):** Connects to the negative terminal of the power supply.
3. **VCC (Power):** Connects to the positive terminal (usually 3.3V or 5V).
---
## 3. Internal Components & Working Principle
The MH18FBG-R is not just a simple phototransistor; it is an **Integrated Circuit (IC)** that contains several functional stages:
* **Photodiode:** Detects the incoming infrared light.
* **Preamplifier:** Boosts the weak signal from the photodiode.
* **Band Pass Filter:** Specifically tuned to **38 kHz**. This rejects noise from sunlight, light bulbs, and other non-remote IR sources.
* **Demodulator:** Removes the 38 kHz carrier wave and extracts the data pulses (the binary code).
* **Output Transistor:** Provides the final digital signal to the output pin.
---
## 4. Connection Diagram Example
To use this with a microcontroller like an Arduino, the wiring is straightforward:
```cpp
// Basic Arduino Code Snippet
#include
const int RECV_PIN = 7; // Connect OUT pin to Digital Pin 7
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX); // Print the IR code
irrecv.resume(); // Receive the next value
}
}
```
---
## 5. Application Areas
* **Consumer Electronics:** TV, DVD, Air conditioning remote receivers.
* **Robotics:** Obstacle detection (when paired with an IR LED) or remote control movement.
* **Home Automation:** Controlling lights or appliances via standard handheld remotes.
- ⤷
What is the difference between an IR receiver and a photodiode?
- ⤷ How do I filter noise if the IR receiver is acting erratically?
- ⤷ Can the MH18FBG-R receive signals from a 40kHz remote?