node-red-contrib-tapo-p125m 0.1.6
Node-RED nodes for TP-Link Tapo P125M smart plug
node-red-contrib-tapo-p125m
Node-RED nodes for reliable local LAN control of the TP-Link Tapo P125M smart plug using tp-link-tapo-connect.
Why
Some existing Tapo Node-RED nodes can read status but fail to toggle the P125M reliably.
This module provides explicit ON, OFF, and STATUS nodes with a shared configuration node.
Install
From the Node-RED Palette Manager, search for:
node-red-contrib-tapo-p125m
Or install manually:
cd ~/.node-red
npm install node-red-contrib-tapo-p125m
Restart Node-RED after installation.
Nodes
Config node: tapo-device
Stores:
- Device IP address
- Credentials (stored securely in Node-RED credential storage)
OR credentials via environment variables
Action nodes (category: Tapo P125M)
- P125M on
- P125M off
- P125M status
All action nodes reference a tapo-device configuration node.
Credentials
Option A: Node-RED credential storage (recommended)
Enter Email/Password in the tapo-device config node.
Credentials are stored in flows_cred.json and are not included in exported flows.
Recommended setting in ~/.node-red/settings.js:
credentialSecret: "your-long-random-string"
Option B: Environment variables
Enable Use env vars in the tapo-device config node and define:
export TAPO_EMAIL="[email protected]"
export TAPO_PASSWORD="yourpassword"
Example output
Success:
{
"ok": true,
"cmd": "on",
"ip": "192.168.1.11",
"device_on": true,
"model": "P125M"
}
Error:
{
"ok": false,
"cmd": "off",
"error": "Missing credentials in tapo-device (or env vars)."
}
Example flow
See examples/example-flow.json in the repository.
Compatibility
- Node-RED >= 3.x
- Node.js >= 18
- TP-Link Tapo P125M
License
MIT