Socket
Book a DemoInstallSign in
Socket

@chirimen/ads1015

Package Overview
Dependencies
Maintainers
8
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@chirimen/ads1015 - npm Package Compare versions

Comparing version

to
1.0.1-alpha.1

84

ads1015.js

@@ -7,3 +7,8 @@ (function (global, factory) {

var ADS1015 = function(i2cPort,slaveAddress){
// @ts-check
/** @param {number} ms Delay for a number of milliseconds. */
const sleep = ms => new Promise(resolve => setTimeout(resolve, ms));
var ADS1015 = function (i2cPort, slaveAddress) {
this.i2cPort = i2cPort;

@@ -15,53 +20,30 @@ this.slaveAddress = slaveAddress;

ADS1015.prototype = {
init: function(){
return new Promise((resolve, reject) => {
this.i2cPort.open(this.slaveAddress).then((i2cSlave) => {
this.i2cSlave = i2cSlave;
resolve();
},(err) => {
console.error("ADS1015.init() Error: "+error.message);
reject(err);
});
});
init: async function () {
this.i2cSlave = await this.i2cPort.open(this.slaveAddress);
},
read: function(channel){
return new Promise((resolve, reject)=>{
if(this.i2cSlave){
if((channel > 3)||(channel < 0)){
console.error("ADS1015.read: channel error"+channel);
err.code = 5;
reject(err.message);
}
var config = 0x4000 + (channel * 0x1000); // ADC channel
config |= 0x8000; // Set 'start single-conversion' bit
config |= 0x0003; // Disable the comparator (default val)
config |= 0x0080; // 1600 samples per second (default)
config |= 0x0100; // Power-down single-shot mode (default)
config |= 0x0200; // +/-4.096V range = Gain 1
var confL = config >> 8;
var confH = config & 0x00ff;
var data = confH | confL;
this.i2cSlave.write16(0x01, data).then((v) => {
setTimeout(()=>{
this.i2cSlave.read16(0).then((v) =>{
var vH = (v & 0x00ff) << 8;
var vL = (v >> 8)& 0x00ffff;
var value = (vH | vL) >> 4;
resolve(value);
},(err) => {
console.error("ADS1015.read: read16(0) error"+err.message);
err.code = 3;
reject(err.message);
});
},10);
}, (err) => {
console.error("ADS1015.read: write16(0,config) error"+err.message);
err.code = 2;
reject(err.message);
});
}else{
err.code = 1;
reject(err.message);
}
});
read: async function (channel) {
if (this.i2cSlave == null) {
throw new Error("i2cSlave is not open yet.");
}
if ((channel < 0) || (3 < channel)) {
throw new Error("ADS1015.read: channel error" + channel);
}
var config = 0x4000 + (channel * 0x1000); // ADC channel
config |= 0x8000; // Set 'start single-conversion' bit
config |= 0x0003; // Disable the comparator (default val)
config |= 0x0080; // 1600 samples per second (default)
config |= 0x0100; // Power-down single-shot mode (default)
config |= 0x0200; // +/-4.096V range = Gain 1
var confL = config >> 8;
var confH = config & 0x00ff;
var data = confH | confL;
await this.i2cSlave.write16(0x01, data);
await sleep(10);
var v = await this.i2cSlave.read16(0);
var vH = (v & 0x00ff) << 8;
var vL = (v >> 8) & 0x00ffff;
var value = (vH | vL) >> 4;
return value;
}

@@ -68,0 +50,0 @@ };

{
"name": "@chirimen/ads1015",
"version": "1.0.1-alpha.0",
"version": "1.0.1-alpha.1",
"description": "Driver for ADS1015 with WebI2C",

@@ -22,3 +22,3 @@ "main": "ads1015.js",

},
"gitHead": "0df331a064d1eb34860455116210d99dbea00032"
"gitHead": "55981f1f513d1f248652a06bcb9d09c45b7e3fa5"
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.