You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

@betaflight/msp

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@betaflight/msp

A MultiWii Serial Protocol library to connect and communicate with flight controllers

0.4.0
latest
Source
npmnpm
Version published
Maintainers
1
Created
Source

@betaflight/msp

MultiWii serial protocol api

A library to handle reading and writing data from flight controllers which use the MultiWii Serial Protocol.

This library has good test coverage of main functionality.

Usage

$ yarn add @betaflight/msp
import { ports, open, execute, close, bytesRead, bytesWritten } from "@betaflight/msp";

(async () => {
  const portsList = await ports();

  console.log(portsList);

  const port = portsList[0];

  // Connect to the device, establish it's an MSP device and read its API version
  await open(port, () => {
    console.log("onClosed");
  });
  console.log(apiVersion(port));

  while (true) {
    const data = await execute(port, {code: 1 });
    console.log(data.readU8());
    ...
  }

  // Close the port when you are done with it
  await close(port)
})();

This MSP library supports sending multiple commands in parallel:

const [data1, data2] = await Promise.all([
  execute(port, {code: 1 }),
  execute(port, {code: 2 }),
]);

Stats from the connection, and is used by @betaflight/configurator

import { open, execute, bytesRead, bytesWritten, packetErrors, WriteBuffer } from "@betaflight/msp";

(async () => {
  await open("/dev/someport");

  const buffer = new WriteBuffer();
  buffer.pushU8(15);
  await execute("/dev/someport", { code: 2, data: buffer });

  console.log(bytesRead("/dev/somport"))
  console.log(bytesWritten("/dev/somport"));
  console.log(packetErrors("/dev/someport"));
})();

Keywords

betaflight

FAQs

Package last updated on 11 Nov 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts