Files
Momentum-Firmware/documentation/JavaScript.md
2024-03-16 12:21:32 +01:00

2.3 KiB

JavaScript scripting API (WIP)

Note: This documentation is still work in progress!

Todo:

  • Add missing parameters
  • Add missing returns
  • Add examples

Description

Momentum supports JavaScript scripting using mjs. Note: Read about mjs's limitations in the link above! You will experience alot of missing js features (e.g. createTimeout).

API

SubGHZ

const subghz = require("subghz");

Methods

  • setup(): void
  • setRx(): void
  • setIdle(): void
  • getRssi(): number
  • getState(): string
  • getFrequency(): number
  • setFrequency(freq: number): number | undefined
  • isExternal(): bool
  • transmitFile(file: string): bool | undefined

Usbdisk

const usbdisk = require("usbdisk");

Methods

  • createImage(file: string, size: number): undefined
  • start(file: string): undefined
  • stop(): undefined
  • wasEjected(): bool | undefined

BadUsb

const badusb = require("badusb");

Methods

  • setup
  • quit
  • isConnected
  • press
  • hold
  • release
  • print
  • println

BleBeacon

const blebeacon = require("blebeacon");

Methods

  • isActive
  • setConfig
  • setData
  • start
  • stop
  • keepAlive

Dialog

const dialog = require("dialog");

Methods

  • message
  • custom
  • pickFile

Flipper

const flipper= require("flipper");

Methods

  • getModel
  • getName
  • getBatteryCharge

Gpio

const gpio = require("gpio");

Methods

  • init
  • write
  • read

Keyboard

const keyboard = require("keyboard");

Methods

  • setHeader
  • text
  • byte

Math

const math = require("math");

Methods

  • abs
  • acos
  • acosh
  • asin
  • asinh
  • atan
  • atan2
  • atanh
  • cbrt
  • ceil
  • clz32
  • cos
  • exp
  • floor
  • log
  • max
  • min
  • pow
  • random
  • sign
  • sin
  • sqrt
  • trunc
  • PI
  • E

Notification

const notify = require("notification");

Methods

  • success
  • error
  • blink

Serial

const serial = require("serial");

Methods

  • setup
  • write
  • read
  • readln
  • readBytes
  • expect

Storage

const storage = require("storage");

Methods

  • read
  • write
  • append
  • exists
  • remove
  • virtualInit
  • virtualMount
  • virtualQuit

Submenu

const submenu = require("submenu");

Methods

  • addItem
  • setHeader
  • show