spi-device-mcp3008
v1.0.0
Published
EventEmitter based micro-library using spi-device to access a MCP3008 on Raspberry PI and others
Downloads
12
Readme
spi-device-mcp3008
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.
Usage
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
API
spiDeviceMcp3008(channel, [bus], [device], [speedHz])
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.
spiDeviceMcp3008().read()
Trigger a single read
event.
spiDeviceMcp3008().poll(delay)
delay
a delay for the polling interval in milliseconds default: 200
Call .poll()
on an spiDeviceMcp3008 instance to emit read
events.
spiDeviceMcp3008().stop()
Stop polling.
spiDeviceMcp3008().close()
Close the SPI bus instance.
spiDeviceMcp3008().on('read', callback)
Passes value
and raw
to the callback every time a reading occurs, either by calling .read()
or using .poll()
;
License
MIT. See LICENSE file.