Nous E12
| Model | E12 |
| Vendor | Nous |
| Description | Carbon monoxide alarm |
| Exposes | carbon_monoxide, carbon_monoxide_value, warming_up, test, testing, fault, end_of_life, battery_state |
| Picture | ![]() |
Notes
Battery
Uses 1 x CR123A battery (3V)
Pairing
Press and hold the test button for 5s to put the device in pairing mode.
The red LED will flash until it connects.
Reporting
Device reports CO state and value immediately when they change, or when the button is pressed, using custom Tuya commands.
Otherwise, it doesn't send commands / spam.
Bindings or reportings are not needed.
Firmware
- Device comes with appVersion
80
(reported in Tuya app as Zigbee module v1.1.0 + MCU v1.0.0) - Subscribed to manufactuerCode
4417, imageType54179
Exposes
Carbon monoxide (binary)
Indicates if CO level and exposure time are above safety limits, triggering the alarm. Value can be found in the published state on the carbon_monoxide property. It's not possible to read (/get) or write (/set) this value. If value equals true carbon monoxide is ON, if false OFF.
Carbon monoxide value (numeric)
Current CO concentration. Value can be found in the published state on the carbon_monoxide_value property. It's not possible to read (/get) or write (/set) this value. The unit of this value is ppm.
Warming up (binary)
Sensor preheating status: Takes 120 to complete after power on. Value can be found in the published state on the warming_up property. It's not possible to read (/get) or write (/set) this value. If value equals true warming up is ON, if false OFF.
Test device (enum)
Triggers the self-checking process: Beeps 4 times and takes 20 seconds to complete. Value can be found in the published state on the test property. It's not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"test": NEW_VALUE}. The possible values are: test.
Testing (binary)
Indicates if self-checking is currently running. Value can be found in the published state on the testing property. It's not possible to read (/get) or write (/set) this value. If value equals true testing is ON, if false OFF.
Fault (binary)
Sensor fault indicator. Value can be found in the published state on the fault property. It's not possible to read (/get) or write (/set) this value. If value equals true fault is ON, if false OFF.
End of life (binary)
Indicates whether the sensor is past its certified service life (10 years) and should be replaced. Value can be found in the published state on the end_of_life property. It's not possible to read (/get) or write (/set) this value. If value equals true end of life is ON, if false OFF.
Battery state (enum)
State of the battery. Value can be found in the published state on the battery_state property. It's not possible to read (/get) or write (/set) this value. The possible values are: low, medium, high.

