Button
A push-button, which returns to inactive position when not operated anymore.
import { Button } from "@devicescript/core"
const button = new Button()
Registers
reading
Indicates the pressure state of the button, where 0 is open.
type:
Register<number>(packing formatu0.16)read only
import { Button } from "@devicescript/core"
const button = new Button()
// ...
const value = await button.reading.read()
- track incoming values
import { Button } from "@devicescript/core"
const button = new Button()
// ...
button.reading.subscribe(async (value) => {
...
})
write and read will block until a server is bound to the client.
analog
Indicates if the button provides analog pressure readings.
type:
Register<boolean>(packing formatu8)optional: this register may not be implemented
constant: the register value will not change (until the next reset)
read only
import { Button } from "@devicescript/core"
const button = new Button()
// ...
const value = await button.analog.read()
write and read will block until a server is bound to the client.
pressed
Determines if the button is pressed currently.
If the event down or hold is observed, pressed becomes true; if up is observed, pressed becomes false.
The client should initialize pressed to false.
type:
Register<boolean>(packing formatu8)read only
import { Button } from "@devicescript/core"
const button = new Button()
// ...
const value = await button.pressed.read()
- track incoming values
import { Button } from "@devicescript/core"
const button = new Button()
// ...
button.pressed.subscribe(async (value) => {
...
})
write and read will block until a server is bound to the client.
Events
down
Emitted when button goes from inactive to active.
button.down.subscribe(() => {
})
up
Emitted when button goes from active to inactive. The 'time' parameter records the amount of time between the down and up events.
button.up.subscribe(() => {
})
hold
Emitted when the press time is greater than 500ms, and then at least every 500ms as long as the button remains pressed. The 'time' parameter records the the amount of time that the button has been held (since the down event).
button.hold.subscribe(() => {
})