3.0.1-alpha • Published 4 years ago

@fadioit/canapi v3.0.1-alpha

Weekly downloads
5
License
-
Repository
-
Last release
4 years ago

Kvaser CanLib implementation for Node.js. Works on Windows only (mocked for MacOS and Linux).

Requirements

  1. Install all the required tools and configurations using Microsoft's windows-build-tools. Open your terminal as an Administrator and type following npm install -g windows-build-tools@4.0.0.

  2. Install Kvaser Drivers for Windows.

Usage

First at all you need to create a CanApi instance with the number of the channel, and the bitrate of can message.

bitrate default : canBITRATE_500k.

const CanApi = require("canapi");

const myChannel = new CanApi(0, CanApi.bitRates.canBITRATE_500K);

.open()

Open the CAN channel.

Returns: bool

.close()

Closes the CAN channel.

Returns: bool

.sendMessage(identifier, data)

Send message to the CAN channel.

Input paramTypeDescription
identifiernumberthe identifier of the CAN message to send
dataarraythe data buffer
dlcnumberthe length of the message in bytes

Returns: bool

Example:

myChannel.sendMessage(731, CanApi.createBuffer([180, 20, 180, 2]), 4);

.readMessage()

Read message from the CAN channel.

Input paramTypeDescription
Object.timeoutnumberthe number of milliseconds to wait for a message before returning (default: 0)

Returns: Object

Output paramTypeDescription
Object.identifiernumberthe identifier of the CAN message to read
Object.databufferthe data buffer
Object.dlcnumberthe length of the message in bytes

Example:

const message = myChannel.readMessage({ timeout: 3000 });

console.log({
  identifier: message.identifier,
  data: Array.from(message.data),
  dlc: message.dlc
});

Helpers

CanApi.createBuffer()

Allows you to create buffer from JavaScript array.

Input paramTypeDescription
dataarraythe data buffer

Returns: Uint8Array

Example:

CanApi.createBuffer([180, 20, 180, 2]);

CanApi.bitRates

List all of the bit rates.

Name
canBITRATE_1M
canBITRATE_500K
canBITRATE_250K
canBITRATE_125K
canBITRATE_100K
canBITRATE_62K
canBITRATE_50K
canBITRATE_83K
canBITRATE_10K
3.0.1-alpha

4 years ago

3.0.0-alpha

4 years ago

2.1.0

5 years ago

2.0.1

5 years ago

2.0.0

5 years ago

1.0.0

5 years ago

0.1.0

5 years ago