SLMP Node-RED API Reference
This page is a user-facing index of the JavaScript SLMP client surface used by the Node-RED nodes. Use the usage guide for flow examples, and this page when you need to find the low-level operation name for a specific SLMP command family.
The main low-level client type is SlmpClient from lib/slmp/client.js.
Direct And Random Device Operations
| Operation | Public API |
|---|---|
| Direct device read/write | readDevices, writeDevices |
| Random read | readRandom |
| Extended random read | readRandomExt |
| Random word/dword write | writeRandomWords |
| Extended random word/dword write | writeRandomWordsExt |
| Random bit write | writeRandomBits |
| Extended random bit write | writeRandomBitsExt |
| Block read/write | readBlock, writeBlock |
| Type name | readTypeName |
Extended random APIs use the 008x subcommands. Use qualified device notation
such as U1\G0, U3E0\HG0, or J2\SW10 where the route requires it.
The current Node-RED low-level client does not expose separate extended direct device helpers. Use the extended random APIs for routed random access.
Specialized Operations
| Operation | Public API |
|---|---|
| Memory command words | memoryReadWords, memoryWriteWords |
| Extend-unit command bytes | extendUnitReadBytes, extendUnitWriteBytes |
| Extend-unit command words | extendUnitReadWords, extendUnitWriteWords |
| Label array access | readArrayLabels, writeArrayLabels |
| Label random access | readRandomLabels, writeRandomLabels |
| Remote CPU control | remoteRun, remoteStop, remotePause, remoteLatchClear, remoteReset |
| Remote password | remotePasswordUnlock, remotePasswordLock |
| CPU operation state | readCpuOperationState |
Monitor registration/cycle APIs are not part of the current Node-RED low-level client surface.
High-Level Helpers
| Operation | Public API |
|---|---|
| Address parsing and formatting | parseDevice, deviceToString, normalizeAddress, parseAddress, formatParsedAddress |
| Extended-device helpers | normalizeExtensionSpec, resolveExtendedDeviceAndExtension, encodeExtendedDeviceSpec |
| Typed values | readTyped, writeTyped |
| Named mixed snapshots | compileReadPlan, readNamed, writeNamed |
| Bit-in-word write | writeBitInWord |
Target Module I/O Constants
ModuleIONo provides named request-header module I/O numbers for multi-CPU
and routed CPU targets. Use these values in the route object's moduleIO
field; omitted route targets still use the own-station route 0x03FF.
| Constant | Value |
|---|---|
ModuleIONo.CONTROL_SYSTEM_CPU |
0x03D0 |
ModuleIONo.STANDBY_SYSTEM_CPU |
0x03D1 |
ModuleIONo.SYSTEM_A_CPU |
0x03D2 |
ModuleIONo.SYSTEM_B_CPU |
0x03D3 |
ModuleIONo.MULTIPLE_CPU_1 .. ModuleIONo.MULTIPLE_CPU_4 |
0x03E0 .. 0x03E3 |
ModuleIONo.REMOTE_HEAD_1 / ModuleIONo.REMOTE_HEAD_2 |
0x03E0 / 0x03E1 |
ModuleIONo.CONTROL_SYSTEM_REMOTE_HEAD / ModuleIONo.STANDBY_SYSTEM_REMOTE_HEAD |
0x03D0 / 0x03D1 |
ModuleIONo.OWN_STATION |
0x03FF |