mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-04-25 03:29:58 -07:00
3.9 KiB
3.9 KiB
JavaScript scripting API (WIP)
Note: This documentation is still work in progress!
Todo:
- Add missing parameters & returns (Dialog and lower)
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).
Examples
Make sure to check out the included examples! They cover basically everything that is possible with Flipper JS.
API
Global
print(...args: any): undefineddelay(...args: any): undefined | errorto_string(num: number): stringto_hex_string(num: number): stringffi_address(symbol: string): foreignrequire(module: string): object | errorparse_int(text: string): numberto_upper_case(text: string): string | errorto_lower_case(text: string): string | error
SubGHZ
const subghz = require("subghz");
subghz.setup(): undefinedsubghz.setRx(): undefinedsubghz.setIdle(): undefinedsubghz.getRssi(): numbersubghz.getState(): stringsubghz.getFrequency(): numbersubghz.setFrequency(freq: number): number | errorsubghz.isExternal(): boolsubghz.transmitFile(file: string): bool | error
Usbdisk
const usbdisk = require("usbdisk");
createImage(file: string, size: number): undefined | errorstart(file: string): undefined | errorstop(): undefined | errorwasEjected(): bool | error
BadUsb
const badusb = require("badusb");
setup({ vid: number, pid: number, mfr_name: string, prod_name: string }): undefined | errorquit(): undefined | errorisConnected(): bool | errorpress(...keyAndModifiers: string | number): undefined | errorhold(...keyAndModifiers: string | number): undefined | errorrelease(...keyAndModifiers: string | number | undefined): undefined | errorprint(text: string, delay: number | undefined): undefined | errorprintln(text: string, delay: number | undefined): undefined | erroraltPrint(text: string, delay: number | undefined): undefined | erroraltPrintln(text: string, delay: number | undefined): undefined | error
BleBeacon
const blebeacon = require("blebeacon");
isActive(): bool | errorsetConfig(mac: Uint8Array, power: number | undefined, intvMin: number | undefined, intvMax: number | undefined): undefined | errorsetData(data: Uint8Array): undefined | errorstart(): undefined | errorstop(): undefined | errorkeepAlive(keep: boolean): undefined | error
Dialog
const dialog = require("dialog");
message()custom()pickFile()
Flipper
const flipper= require("flipper");
getModel()getName()getBatteryCharge()
Gpio
const gpio = require("gpio");
init()write()read()
Keyboard
const keyboard = require("keyboard");
setHeader()text()byte()
Math
const math = require("math");
abs()acos()acosh()asin()asinh()atan()atan2()atanh()cbrt()ceil()clz32()cos()exp()floor()log()max()min()pow()random()sign()sin()sqrt()trunc()PIE
Notification
const notify = require("notification");
success()error()blink()
Serial
const serial = require("serial");
setup()write()read()readln()readBytes()expect()
Storage
const storage = require("storage");
read()write()append()exists()remove()virtualInit()virtualMount()virtualQuit()
Submenu
const submenu = require("submenu");
addItem()setHeader()show()