UNPKG

bt-sensors-plugin-sk

Version:

Bluetooth Sensors for Signalk - see https://www.npmjs.com/package/bt-sensors-plugin-sk#supported-sensors for a list of supported sensors

42 lines (33 loc) 1.74 kB
/* */ const VictronSensor = require ("./Victron/VictronSensor.js") const VC = require("./Victron/VictronConstants.js") class VictronOrionXS extends VictronSensor{ static ImageFile="VictronOrionTrIsolated.webp" initSchema() { super.initSchema() this.addDefaultParam("id") this.addMetadatum('deviceState','', 'device state', (buff)=>{return VC.OperationMode.get(buff.readUInt8(0))}) .default="electrical.chargers.{id}.state" this.addMetadatum('chargerError','', 'charger error', (buff)=>{return VC.ChargerError.get(buff.readUInt8(1))}) .default="electrical.chargers.{id}.error" this.addMetadatum('outputVoltage','V', 'output voltage', (buff)=>{return this.NaNif(buff.readInt16LE(2),0x7FF)/100}) .default="electrical.chargers.{id}.output.voltage" this.addMetadatum('current','A','output current', (buff)=>{return this.NaNif(buff.readUInt16LE(4),0xFFFF)/10}) .default="electrical.chargers.{id}.output.current" this.addMetadatum('inputVoltage','V', 'input voltage', (buff)=>{return this.NaNif(buff.readInt16LE(6),0x07FF)/100}) .default="electrical.chargers.{id}.input.voltage" this.addMetadatum('inputCurrent','A','input current', (buff)=>{return this.NaNif(buff.readUInt16LE(8),0xFFFF)/10}) .default="electrical.chargers.{id}.input.current" this.addMetadatum('deviceOffReason','', 'device off reason', (buff)=>{return this.offReasonText(buff.readUInt32LE(10))}) .default="electrical.chargers.{id}.offReason" } } module.exports=VictronOrionXS