JSFiddle - React, Tailwind, and code Playground
JavaScript
///////////////////////////////////////////////////////////////////////////////////
// only needed for this test
///////////////////////////////////////////////////////////////////////////////////
sysinfoline = new Array(6)
sysinfoline[6] = 257; // 0001 0000 0001
// | |
// Bit12 Bit0
///////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////
// for production
///////////////////////////////////////////////////////////////////////////////////
var binval = sysinfoline[6]; // SYSINFO line, element 6
var cl_dos_state = (binval >> 0) & 0x01 // off(0) or auto(1))
var cl_dos_type = (binval >> 4) & 0x01 // liquid(0) or elo(1) dosing)
var phm_dos_state = (binval >> 8) & 0x01 // off(0) or auto(1))
var php_dos_state = (binval >> 12) & 0x01 // off(0) or auto(1))
console.log('cl_dos: ' + cl_dos_state + ' - ' +(cl_dos_state == 0 ? 'OFF':'AUTO'))
console.log('cl_type: ' + cl_dos_type + ' - ' +(cl_dos_type == 0 ? 'LIQUID':'ELO'))
console.log('phm_dos: ' + phm_dos_state + ' - ' +(phm_dos_state == 0 ? 'OFF':'AUTO'))
console.log('php_dos: ' + php_dos_state + ' - ' +(php_dos_state == 0 ? 'OFF':'AUTO'))