UNPKG

knxultimate

Version:

KNX IP protocol implementation for Node. This is the ENGINE of Node-Red KNX-Ultimate node.

142 lines (133 loc) 3.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const KnxLog_1 = require("../KnxLog"); const logger = (0, KnxLog_1.module)('DPT20'); const config = { id: 'DPT20', formatAPDU: (value) => { const apdu_data = Buffer.alloc(1); apdu_data[0] = value; logger.debug(`./knx/src/dpt20.js : input value = ${value} apdu_data = ${apdu_data}`); return apdu_data; }, fromBuffer: (buf) => { if (buf.length !== 1) { logger.warn('Buffer should be 1 byte long, got', buf.length); return null; } const ret = buf.readUInt8(0); return ret; }, basetype: { bitlength: 8, range: [,], valuetype: 'basic', desc: '1-byte', help: `// Send Value. Examples for DPT20 (1-byte HVAC): // DPT20.102 - HVAC Mode: 0 = Auto, 1 = Comfort, 2 = Standby, 3 = Economy, 4 = Building protection msg.payload = 1; // Set to Comfort return msg; // DPT20.103 - HVAC Control Mode: 0 = Auto, 1 = Heat, 2 = Cool, 3 = Fan only, 4 = Dry msg.payload = 2; // Set to Cool return msg; // DPT20.104 - HVAC Emergency Mode: 0 = Normal, 1 = Emergency msg.payload = 1; // Set to Emergency return msg; // DPT20.105 - HVAC Changeover Mode: 0 = Auto, 1 = Heating, 2 = Cooling msg.payload = 1; // Set to Heating return msg; // DPT20.106 - HVAC Valve Mode: 0 = Auto, 1 = Open, 2 = Closed msg.payload = 2; // Set to Closed return msg; // DPT20.107 - HVAC Damper Mode: 0 = Auto, 1 = Open, 2 = Closed msg.payload = 1; // Set to Open return msg; // DPT20.108 - HVAC Heater Mode: 0 = Auto, 1 = On, 2 = Off msg.payload = 1; // Set to On return msg; // DPT20.109 - HVAC Fan Mode: 0 = Auto, 1 = Low, 2 = Medium, 3 = High msg.payload = 3; // Set to High return msg; // DPT20.110 - HVAC Master/Slave Mode: 0 = Master, 1 = Slave msg.payload = 0; // Set to Master return msg; // DPT20.111 - HVAC Room Temperature Setpoint: Value in °C (e.g., 22 for 22°C) msg.payload = 22; // Set to 22°C return msg;`, helplink: '', }, subtypes: { 102: { name: 'HVAC Mode', desc: 'HVAC mode control', unit: '', scalar_range: [,], range: [,], }, 103: { name: 'HVAC Control Mode', desc: 'HVAC control mode', unit: '', scalar_range: [,], range: [,], }, 104: { name: 'HVAC Emergency Mode', desc: 'HVAC emergency mode', unit: '', scalar_range: [,], range: [,], }, 105: { name: 'HVAC Changeover Mode', desc: 'HVAC changeover mode', unit: '', scalar_range: [,], range: [,], }, 106: { name: 'HVAC Valve Mode', desc: 'HVAC valve mode', unit: '', scalar_range: [,], range: [,], }, 107: { name: 'HVAC Damper Mode', desc: 'HVAC damper mode', unit: '', scalar_range: [,], range: [,], }, 108: { name: 'HVAC Heater Mode', desc: 'HVAC heater mode', unit: '', scalar_range: [,], range: [,], }, 109: { name: 'HVAC Fan Mode', desc: 'HVAC fan mode', unit: '', scalar_range: [,], range: [,], }, 110: { name: 'HVAC Master/Slave Mode', desc: 'HVAC master/slave mode', unit: '', scalar_range: [,], range: [,], }, 111: { name: 'HVAC Room Temperature Setpoint', desc: 'HVAC room temperature setpoint', unit: '°C', scalar_range: [,], range: [,], }, }, }; exports.default = config; //# sourceMappingURL=dpt20.js.map