Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[New device support]: Immax NEO 07523L Soil temperature & humidity sensor #22364

Closed
slush0 opened this issue Apr 30, 2024 · 4 comments
Closed
Labels
new device support New device support request

Comments

@slush0
Copy link

slush0 commented Apr 30, 2024

Link

https://www.immax.eu/immax-neo-smart-soil-moisture-and-temperature-sensor-zigbee-p18721/

Database entry

{"id":15,"type":"EndDevice","ieeeAddr":"0xa4c138146dc0c51f","nwkAddr":4539,"manufId":4417,"manufName":"_TZE200_2se8efxh","powerSource":"Battery","modelId":"TS0601","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":81,"inClusterList":[4,5,61184,0],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"65503":"G\u0011�-iM\u0011�-i\u0000\u0000\u0000\u0000\u0011\u0000\u0000\u0000\u0000\u0011","65506":56,"65508":1,"65534":0,"stackVersion":0,"dateCode":"","appVersion":72,"manufacturerName":"_TZE200_2se8efxh","zclVersion":3,"modelId":"TS0601","powerSource":3}}},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":72,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"meta":{"configured":1324213189},"lastSeen":1714502975079}

Comments

I'm attaching working definition, it exports battery level, temperature and humidity.

External definition

const {} = require('zigbee-herdsman-converters/lib/modernExtend');
const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const ota = require('zigbee-herdsman-converters/lib/ota');
const utils = require('zigbee-herdsman-converters/lib/utils');
const globalStore = require('zigbee-herdsman-converters/lib/store');
const e = exposes.presets;
const ea = exposes.access;
const tuya = require('zigbee-herdsman-converters/lib/tuya');

const definition = {
    fingerprint: [
        {
            modelID: 'TS0601',
            manufacturerName: '_TZE200_2se8efxh',
        },
    ],
    model: '07523L',
    vendor: 'Immax',
    description: 'NEO Soil temperature & humidity sensor',
    fromZigbee: [tuya.fz.datapoints],
    toZigbee: [tuya.tz.datapoints],
    configure: tuya.configureMagicPacket,
    exposes: [e.battery(), e.temperature(), e.humidity()],
    meta: {
        tuyaDatapoints: [
            [3, 'humidity', tuya.valueConverter.raw],
            [5, 'temperature', tuya.valueConverter.raw],
            [15, 'battery', tuya.valueConverter.raw],
        ],
    },
};

module.exports = definition;
@slush0 slush0 added the new device support New device support request label Apr 30, 2024
@Koenkk
Copy link
Owner

Koenkk commented May 1, 2024

humidity is the soil_moisture right? Does the following work?

        exposes: [e.temperature(), e.soil_moisture(), tuya.exposes.temperatureUnit(), e.battery(), tuya.exposes.batteryState()],
        meta: {
            tuyaDatapoints: [
                [3, 'soil_moisture', tuya.valueConverter.raw],
                [5, 'temperature', tuya.valueConverter.raw],
                [9, 'temperature_unit', tuya.valueConverter.temperatureUnit],
                [14, 'battery_state', tuya.valueConverter.batteryState],
                [15, 'battery', tuya.valueConverter.raw],
            ],
        },

@supaeasy
Copy link

supaeasy commented May 2, 2024

From the looks I have the exact device (bought from Aliexpress). Z2M recognizes this as https://www.zigbee2mqtt.io/devices/TS0601_soil.html

It is absolute garbage though. Soil moisture is utterly wrong and there is no way to calibrate it.

Koenkk added a commit to Koenkk/zigbee-herdsman-converters that referenced this issue May 2, 2024
@Koenkk
Copy link
Owner

Koenkk commented May 2, 2024

Added it!

Changes will be available in the dev branch in a few hours from now.

@slush0
Copy link
Author

slush0 commented May 4, 2024

humidity is the soil_moisture right? Does the following work?

        exposes: [e.temperature(), e.soil_moisture(), tuya.exposes.temperatureUnit(), e.battery(), tuya.exposes.batteryState()],
        meta: {
            tuyaDatapoints: [
                [3, 'soil_moisture', tuya.valueConverter.raw],
                [5, 'temperature', tuya.valueConverter.raw],
                [9, 'temperature_unit', tuya.valueConverter.temperatureUnit],
                [14, 'battery_state', tuya.valueConverter.batteryState],
                [15, 'battery', tuya.valueConverter.raw],
            ],
        },

Yes, this definition works for my device, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new device support New device support request
Projects
None yet
Development

No branches or pull requests

3 participants