npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

node-red-contrib-seeed-recamera

v0.0.8

Published

Node-RED nodes for reCamera

Readme

Platform Node-RED

Overview

This Node-RED palette provides nodes for interacting with the Seeed Studio reCamera and reCamera Gimbal devices, allowing you to integrate hardware interface functionalities like light or motor control into your Node-RED flows.

Installation

To install the package in Node-RED, run the following command:

npm install node-red-contrib-seeed-recamera

Alternatively, you can install it through the Node-RED palette manager by searching for "node-red-contrib-seeed-recamera".

Categories

reCamera Nodes

Light

This is the Light node for the build-in fill light on reCamera.

Input:Parse in msg.payload = on to start light, and msg.payload = off to stop light.

No output.

reCamera Gimbal Nodes

Motor IDs for all nodes in this group:

  • Yaw motor (horizontal): 0x141
  • Pitch motor (vertical): 0x142

Angle to CAN

The node takes a numeric angle value as input and generates a CAN message object that can be sent directly to a CAN bus interface or to a CAN Write node.

Input: should be a numeric value representing the target angle (for absolute positioning) or angle offset (for relative movement).

Outputs: a CAN message object that can be sent directly to a CAN bus:

CAN to Angle

The node takes a CAN message object as input and extracts the motor ID, command type, and angle/offset value. It supports absolute position commands (A4), relative offset commands (A8), and status query commands (94). Input: should be a CAN message object with the following structure:

{
  "id": 0x141,  // Motor ID in hex format (0x141 for Yaw, 0x142 for Pitch)
  "data": [...]  // Byte array containing the command data (8 bytes)
}

Outputs: a JSON object with the decoded information:

{
    "payload": {
        "motorId": ,
        "angle": 
    }
}

Get Motor Angle

The node queries the current position of either the yaw (horizontal) or pitch (vertical) motor and outputs the angle. This is useful for monitoring the current orientation of the camera or for implementing position-based logic in your flows.

Input: Any input message will trigger the node to read the current motor angle. The content of the input message is not used.

Outputs:The node outputs the current angle value in the msg.payload property:

// With "Output in decimal" selected
{
    "payload": 90.5
}

// With "Output in integer" selected
{
    "payload": 9050
}

Set Motor Angle

This node configures and sends motor angle commands to the reCamera Gimbal motors using SocketCAN direct communication.

Input:

  • For single-axis control, the input is a number representing the angle value.

  • For dual-axis control, the input should be a JSON object with this structure:

    {
        "yaw_angle": value,           // Horizontal angle in degrees
        "yaw_speed": speed_value,     // Optional: 0-720
        "pitch_angle": value,         // Vertical angle in degrees
        "pitch_speed": speed_value    // Optional: 0-720
    }

Outputs: This node does not produce any output messages. It only sets the motor angle and updates its status display to reflect the operation result.

Set Motor Speed

The node sets the speed value for either the yaw (horizontal) or pitch (vertical) motor. This speed setting is stored in the global context and used by other motor control nodes when sending movement commands using SocketCAN.

Input: The input should be a numeric value representing the desired motor speed. The value can be provided in the following formats:

  • Number: 90
  • String containing a number: "45" Outputs: This node does not produce any output messages. It only updates the global context variables and updates its status display to reflect the operation result.

License

This project is licensed under the Apache License 2.0.