UNPKG

@hangtime/grip-connect-cli

Version:
85 lines 2.75 kB
/** * Device definition for the PitchSix Force Board. */ import { ForceBoard } from "@hangtime/grip-connect-runtime"; import pc from "picocolors"; import { printResult, printSuccess } from "../utils.js"; const forceboard = { name: "ForceBoard", class: ForceBoard, actions: [ { name: "Battery", description: "Read battery level", run: async (device) => { const d = device; printResult("Battery:", await d.battery()); }, }, { name: "Humidity", description: "Read humidity level", run: async (device) => { const d = device; printResult("Humidity:", await d.humidity()); }, }, { name: "Manufacturer", description: "Read manufacturer info", run: async (device) => { const d = device; printResult("Manufacturer:", await d.manufacturer()); }, }, { name: "Temperature", description: "Read temperature", run: async (device) => { const d = device; printResult("Temperature:", await d.temperature()); }, }, { name: "Quick Start", description: "Quick Start mode (5s default)", run: async (device, options) => { const d = device; const duration = options.duration ?? 5000; console.log(pc.cyan(`\nQuick Start running for ${duration / 1000}s...\n`)); await d.quick(duration); printSuccess("Quick Start complete."); }, }, { name: "Threshold", description: "Set Quick Start threshold (lbs)", run: async (device) => { const d = device; const lbs = 10; await d.threshold(lbs); printSuccess(`Threshold set to ${lbs} lbs.`); }, }, { name: "Tare by characteristic", description: "Zero calibration via characteristic", run: async (device) => { const d = device; await d.tareByCharacteristic(); printSuccess("Tare complete."); }, }, { name: "Tare by mode", description: "Zero calibration via Device Mode", run: async (device) => { const d = device; await d.tareByMode(); printSuccess("Tare complete."); }, }, ], }; export default forceboard; //# sourceMappingURL=forceboard.js.map