MQ-135 Air Quality/Gas Detector Sensor Module For Arduino

  • Detects multiple gases: NH₃, benzene, alcohol, CO₂, NOₓ, smoke
  • Provides analog and digital outputs
  • Operates at 5V DC
  • Adjustable sensitivity via onboard potentiometer
  • Requires preheating (~24 hours) for accurate readings
  • Compact and easy to integrate

Apple Shopping Event

Hurry and get discounts on all Apple devices up to 20%

100,00 EGP

15 People watching this product now!

Payment Methods:

Description

If you are want to make a device that is used to detect Ammonia, Sulphide, and Benzene steam, also sensitive to smoke and other harmful gasses from the desired distance, then this sensor is needed for you.

The MQ 135 Air Quality Detector Sensor Module For Arduino has lower conductivity in clean air. When the target combustible gas exists, the conductivity of the sensor is higher along with the gas concentration rising.

Convert the change of conductivity to the corresponding output signal of gas concentration. The MQ135 gas sensor has a high sensitivity to Ammonia, Sulphide, and Benzene steam, also sensitive to smoke and other harmful gases.

It is at a low cost and suitable for different applications such as harmful gases/smoke detection.


Features :

  1. Sensitivity to Ammonia, Sulphide, and Benzene steam
  2. With signal output instructions
  3. The TTL output signal is a low level
  4. Analog 0 ~ 5 v voltage output, the higher the concentration, the higher the voltage
  5. Color is showing pictures.
  6. Sensitive for benzene, alcohol, smoke
  7. Fast response and recovery
  8. Adjustable sensitivity
  9. Signal output indicator
  10. Output voltage boosts along with the concentration of the measured gases increases.

Package Includes :

1 x MQ 135 Air Quality Sensor Module.


🔌
Pin Connections
1 Table
Pin Connections Table 1
BoardSensor PinConnection
MQ-135VCC/GND/AOUT5V / GND / board analog pin (see per-board note)
📟
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino
7 Examples • C/C++ | Boards: Arduino Uno, Arduino Nano, Arduino Mega, ESP32, ESP8266, STM32, Raspberry Pi Pico
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - Arduino Uno
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - Arduino Nano
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - Arduino Mega
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - ESP32
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - ESP8266
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - STM32
MQ-135 Air Quality/Gas Detector Sensor Module For Arduino - Raspberry Pi Pico
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_arduino_uno.inoArduino Uno
583 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: A0 on Arduino Uno (ADC range 0-1023, reference 5.0V)
6#define MQ_PIN A0
7
8void setup() {
9 Serial.begin(115200);
10 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
11}
12
13void loop() {
14 int raw = analogRead(MQ_PIN);
15 float voltage = raw * 5.0 / 1023.0;
16
17 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
18 Serial.print(" Voltage: "); Serial.print(voltage);
19 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
20
21 delay(1000);
22}
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_arduino_nano.inoArduino Nano
584 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: A0 on Arduino Nano (ADC range 0-1023, reference 5.0V)
6#define MQ_PIN A0
7
8void setup() {
9 Serial.begin(115200);
10 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
11}
12
13void loop() {
14 int raw = analogRead(MQ_PIN);
15 float voltage = raw * 5.0 / 1023.0;
16
17 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
18 Serial.print(" Voltage: "); Serial.print(voltage);
19 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
20
21 delay(1000);
22}
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_arduino_mega.inoArduino Mega
584 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: A0 on Arduino Mega (ADC range 0-1023, reference 5.0V)
6#define MQ_PIN A0
7
8void setup() {
9 Serial.begin(115200);
10 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
11}
12
13void loop() {
14 int raw = analogRead(MQ_PIN);
15 float voltage = raw * 5.0 / 1023.0;
16
17 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
18 Serial.print(" Voltage: "); Serial.print(voltage);
19 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
20
21 delay(1000);
22}
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_esp32.inoESP32
803 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: 34 on ESP32 (ADC range 0-4095, reference 3.3V)
6// SAFETY: this module can output up to 5V, but ESP32's ADC input max is 3.3V.
7// Power the module from the board's 3.3V pin instead of 5V, OR add a simple
8// resistor voltage divider on the analog output before wiring it in.
9#define MQ_PIN 34
10
11void setup() {
12 Serial.begin(115200);
13 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
14}
15
16void loop() {
17 int raw = analogRead(MQ_PIN);
18 float voltage = raw * 3.3 / 4095.0;
19
20 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
21 Serial.print(" Voltage: "); Serial.print(voltage);
22 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
23
24 delay(1000);
25}
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_esp8266.inoESP8266
807 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: A0 on ESP8266 (ADC range 0-1023, reference 3.3V)
6// SAFETY: this module can output up to 5V, but ESP8266's ADC input max is 3.3V.
7// Power the module from the board's 3.3V pin instead of 5V, OR add a simple
8// resistor voltage divider on the analog output before wiring it in.
9#define MQ_PIN A0
10
11void setup() {
12 Serial.begin(115200);
13 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
14}
15
16void loop() {
17 int raw = analogRead(MQ_PIN);
18 float voltage = raw * 3.3 / 1023.0;
19
20 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
21 Serial.print(" Voltage: "); Serial.print(voltage);
22 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
23
24 delay(1000);
25}
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_stm32.inoSTM32
805 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: PA0 on STM32 (ADC range 0-4095, reference 3.3V)
6// SAFETY: this module can output up to 5V, but STM32's ADC input max is 3.3V.
7// Power the module from the board's 3.3V pin instead of 5V, OR add a simple
8// resistor voltage divider on the analog output before wiring it in.
9#define MQ_PIN PA0
10
11void setup() {
12 Serial.begin(115200);
13 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
14}
15
16void loop() {
17 int raw = analogRead(MQ_PIN);
18 float voltage = raw * 3.3 / 4095.0;
19
20 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
21 Serial.print(" Voltage: "); Serial.print(voltage);
22 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
23
24 delay(1000);
25}
📄 File: mq-135_air_quality/gas_detector_sensor_module_for_arduino_-_raspberry_pi_pico.inoRaspberry Pi Pico
827 characters
1//ekostra.com
2//electronics store in egypt
3//+201008896258
4
5// Analog pin: 26 on Raspberry Pi Pico (ADC range 0-4095, reference 3.3V)
6// SAFETY: this module can output up to 5V, but Raspberry Pi Pico's ADC input max is 3.3V.
7// Power the module from the board's 3.3V pin instead of 5V, OR add a simple
8// resistor voltage divider on the analog output before wiring it in.
9#define MQ_PIN 26
10
11void setup() {
12 Serial.begin(115200);
13 Serial.println("Warming up sensor (needs ~20-60s to stabilize)...");
14}
15
16void loop() {
17 int raw = analogRead(MQ_PIN);
18 float voltage = raw * 3.3 / 4095.0;
19
20 Serial.print("MQ-135 (air quality) raw ADC: "); Serial.print(raw);
21 Serial.print(" Voltage: "); Serial.print(voltage);
22 Serial.println(" V (higher = more gas detected; calibrate a clean-air baseline for real ppm)");
23
24 delay(1000);
25}
Analog air-quality sensor (CO2, ammonia, benzene, smoke). Needs warm-up for stable readings.

Specification

Specification

WeightWeight6 g
Dimensions3,2 × 2,4 × 1,8 cm
Product NameMQ-135 Air Quality / Gas Detector Sensor Module
TypeGas / Air Quality Sensor Module
ModelMQ-135
Sensing GasNH₃, NOx, Alcohol, Benzene, Smoke, CO₂ (air quality)
Operating Voltage5 V DC
Output TypeAnalog and Digital
Detection Range10–1000 ppm (typical for air quality gases)
Heating ElementBuilt-in Heater for Gas Detection
Response Time<10 s (typical)
Operating Temperature-10°C to +50°C
MaterialPCB Module with Sensor and Components
ApplicationsAir Quality Monitoring, Gas Leakage Detection, Arduino / DIY Electronics, Environmental Projects
Package Contents1× MQ-135 Air Quality / Gas Detector Sensor Module

Customer Reviews