Skip to main content

Sensor Toolkit

Read I2C sensors on Raspberry Pi — temperature, humidity, and barometric pressure from BME280 and similar sensors. Requires i2c-bus as an optional peer dependency.

Quick Start

import { Agent, ollama } from "@radaros/core";
import { SensorToolkit } from "@radaros/edge";

const sensor = new SensorToolkit({ busNumber: 1 });

const agent = new Agent({
  name: "weather-station",
  model: ollama("llama3.2:1b"),
  instructions: "Read environmental data from sensors and report conditions.",
  tools: [...sensor.getTools()],
});

const result = await agent.run("What's the current temperature and humidity?");

Config

busNumber
number
default:"1"
I2C bus number. Standard on all Raspberry Pi models is bus 1.
addresses.bme280
number
default:"0x76"
I2C address for the BME280 sensor.

Tools

ToolDescription
sensor_listScan the I2C bus and discover connected devices
sensor_read_temperatureRead temperature in Celsius from BME280
sensor_read_humidityRead relative humidity as a percentage
sensor_read_pressureRead barometric pressure in hPa
sensor_read_allRead all measurements at once

Supported Sensors

SensorMeasurementsDefault Address
BME280Temperature, humidity, pressure0x76
BMP180Temperature, pressure0x77