EventEmitter based micro-library using spi-device to access a MCP3008 on Raspberry PI and others. Based on mcp-spi-adc by @fivdi
This library might fail to install on other platforms!
Please note: This is provided as is and probably not properly maintained, it should work fine if you have node >= 6.
const spiDeviceMcp3008 = require('spi-device-mcp3008');
const myMcp3008 = spiDeviceMcp3008(0, 0, 0); // channel 0 of /dev/spidev0.0
myMcp3008
.on('read', (value, raw) => {
console.log(value, raw);
})
.on('error', err => console.error(err));
myMcp3008.poll(500); // triggers `read` every 500ms
Connect to a MCP3008 via SPI.
channel
number of the channel on your MCP3008 must be providedbus
SPI bus (ie. 1 if you use /dev/spidev1.2) default: 0device
SPI device (CE) (ie. 2 if you use /dev/spidev1.2) default: 0speedHz
SPI clock frequency default 1350000 (via fivdi)
See Source of index.js for further references.
Trigger a single read
event.
delay
a delay for the polling interval in milliseconds default: 200
Call .poll()
on an spiDeviceMcp3008 instance to emit read
events.
Stop polling.
Close the SPI bus instance.
Passes value
and raw
to the callback every time a reading occurs, either by calling .read()
or using .poll()
;
MIT. See LICENSE file.