1.0.0 • Published 8 years ago

spi-device-mcp3008 v1.0.0

Weekly downloads
6
License
MIT
Repository
github
Last release
8 years ago

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 provided
  • bus SPI bus (ie. 1 if you use /dev/spidev1.2) default: 0
  • device SPI device (CE) (ie. 2 if you use /dev/spidev1.2) default: 0
  • speedHz 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.

1.0.0

8 years ago

0.1.0

8 years ago