2.5.0 • Published 9 years ago

r-pi-usonic v2.5.0

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

r-pi-usonic

A high performance, memory mapped, Node.js API for the HC-SR04 ultrasonic sensor connected to a Raspberry Pi.

license npm downloads

build coverage code climate dependencies devDependencies

Getting Started

Installation

npm install r-pi-usonic --save

Integration

var usonic = require('r-pi-usonic');

API

usonic.init(callback)

Creates the memory mapping with a device-specific memory offset.

You must call this function only once and before any other function.

usonic.init(function (error) {
    if (error) {
        ...
    } else {
        ...
    }
});

usonic.createSensor(echoPin, triggerPin, timeout)

Creates a new ultrasonic sensor function and returns it. The measurement timeout has a default value of 750 µs.

var sensor = usonic.createSensor(24, 23, 450);

sensor()

Returns the distance in cm if no measurement timeout occurs, and -1 otherwise.

var distance = sensor();

Example

This example needs access to the physical memory, so it must run as root.

sudo node examples/surveyor.js

Example: hcsr04.png

Raspberry Pi GPIO Pin Layout

Raspberry Pi Model A/B (Rev 1.0)

AssignmentPinPinAssignment
3.3V125V
GPIO 0 (SDA0)345V
GPIO 1 (SCL0)56GROUND
GPIO 478GPIO 14 (TXD0)
GROUND910GPIO 15 (RXD0)
GPIO 171112GPIO 18
GPIO 211314GROUND
GPIO 221516GPIO 23
3.3V1718GPIO 24
GPIO 10 (SPI_MOSI)1920GROUND
GPIO 9 (SPI_MISO)2122GPIO 25
GPIO 11 (SPI_SCLK)2324GPIO 8 (SPI_CE0_N)
GROUND2526GPIO 7 (SPI_CE1_N)

Raspberry Pi Model A/B (Rev 2.0)

AssignmentPinPinAssignment
3.3V125V
GPIO 2 (SDA1)345V
GPIO 3 (SCL1)56GROUND
GPIO 478GPIO 14 (TXD0)
GROUND910GPIO 15 (RXD0)
GPIO 171112GPIO 18
GPIO 271314GROUND
GPIO 221516GPIO 23
3.3V1718GPIO 24
GPIO 10 (SPI_MOSI)1920GROUND
GPIO 9 (SPI_MISO)2122GPIO 25
GPIO 11 (SPI_SCLK)2324GPIO 8 (SPI_CE0_N)
GROUND2526GPIO 7 (SPI_CE1_N)

Raspberry Pi Model B+ / Raspberry Pi 2 Model B

AssignmentPinPinAssignment
3.3V125V
GPIO 2 (SDA1)345V
GPIO 3 (SCL1)56GROUND
GPIO 478GPIO 14 (TXD0)
GROUND910GPIO 15 (RXD0)
GPIO 171112GPIO 18
GPIO 271314GROUND
GPIO 221516GPIO 23
3.3V1718GPIO 24
GPIO 10 (SPI_MOSI)1920GROUND
GPIO 9 (SPI_MISO)2122GPIO 25
GPIO 11 (SPI_SCLK)2324GPIO 8 (SPI_CE0_N)
GROUND2526GPIO 7 (SPI_CE1_N)
ID_SD2728ID_SC
GPIO 52930GROUND
GPIO 63132GPIO 12
GPIO 133334GROUND
GPIO 193536GPIO 16
GPIO 263738GPIO 20
GROUND3940GPIO 21

Related Links

Running Tests

To run the test suite first install the development dependencies:

npm install

then run the tests:

npm test
2.5.0

9 years ago

2.4.1

9 years ago

2.4.0

9 years ago

2.3.2

10 years ago

2.3.1

10 years ago

2.3.0

10 years ago

2.2.0

10 years ago

2.1.1

10 years ago

2.1.0

10 years ago

2.0.2

10 years ago

2.0.1

10 years ago

2.0.0

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.0

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago