[[FrontPage]] command: set readInterval=30000 command: set execInterval=0 command: set reportLength=600 command: program sensors program: 'ex("service","clear sendBuffer") program: ' program: ' init i2c program: ex("pi4j", "i2c use 1") program: ' program: ' init hdc1080 program: ex("pi4j", "i2c write2 0x40,0x02,0x10,0x00") ' config program: ' program: 'get temp program: ex("pi4j", "i2c write-b 0x40,0x00") ' temp program: delay(15) program: v1s=ex("pi4j", "i2c read-A-2 0x40") ' get temp program: 'temp=s2i(v1s)/65536.0*165-40 program: v1=s2i(v1s) program: if v1<0 then v1x=2.0*(v1/2+0x8000) else v1x=1.0*v1 program: temp=v1x/65536.0*165-40 program: ' program: 'delay(20) program: ' program: 'get humidity program: ex("pi4j", "i2c write-b 0x40,0x01") ' get humidity program: delay(15) program: v2s=ex("pi4j", "i2c read-A-2 0x40") 'humid program: v2=s2i(v2s) program: if v2<0 then v3=2.0*(v2/2 + 0x8000) else v3=v2*1.0 program: humid=(v3/65536.0) *100 program: ex("service","putSendBuffer device=temp, Date="+ex("service","getCurrentDate.")+", v="+temp) program: ex("service","putSendBuffer device=humid, Date="+ex("service","getCurrentDate.")+",v="+humid) program: delay(40) program: ' program: ' init lux sensor program: ex("pi4j", "i2c write1 0x29,0x80,0x03") 'power up the tsl2561 lux sensor program: ex("pi4j", "i2c write1 0x29,0x81,0x00") program: ex("pi4j", "i2c write1 0x29,0x86,0x00") 'scale program: ex("pi4j", "i2c write1 0x29,0x80,0x00") 'power down program: ex("pi4j", "i2c write1 0x29,0x80,0x03") ' power up again program: delay(50) program: ' program: 'get the lux value program: v1=ex("pi4j", "i2c read1 0x29,0x8c") program: v2=ex("pi4j", "i2c read1 0x29,0x8d") program: v=s2i(v2)*256+s2i(v1) program: ex("service","putSendBuffer device=lux, Date="+ex("service","getCurrentDate.")+", v="+v) program: ' program: 'Ardino-I2C PIR sensor program: ' program: 'get 30sec. motions program: v1=ex("pi4j", "i2c read1 0x12,0x01") program: v2=ex("pi4j", "i2c read1 0x12,0x02") program: v=s2i(v1)*256+s2i(v2) program: if v < 120 then program: { program: ex("service","putSendBuffer device=pir, Date="+ex("service","getCurrentDate.")+", v="+v) program: } program: ' program: ' program: 'Ardino-I2C CO2 sensor program: ' program: v1=ex("pi4j", "i2c read1 0x13,0x01") program: v2=ex("pi4j", "i2c read1 0x13,0x02") program: v=s2i(v1)*256+s2i(v2) program: if v<10000 then program: { program: ex("service","putSendBuffer device=co2, Date="+ex("service","getCurrentDate.")+", v="+v) program: } program: ' program: ' program: 'Ardino-particle(dust) sensor program: ' program: v1=ex("pi4j", "i2c read1 0x15,0x01") program: v2=ex("pi4j", "i2c read1 0x15,0x02") program: v=s2i(v1)*256+s2i(v2) program: if v<100000 then program: { program: ex("service","putSendBuffer device=dst, Date="+ex("service","getCurrentDate.")+", v="+v) program: } program: ' program: ex("pi4j", "i2c close.") program: ex("service","sendResults.") command: end sensors command: run sensors command: set pageName="sensors-1-h-<hour>"