mqtt2atlonamatrix
v1.0.0
Published
Bridge from MQTT to Atlona HDMI matrix switches. Attempts to follow mqtt-smarthome pattern.
Downloads
4
Maintainers
Readme
mqtt2atlonamatrix
Bridge from MQTT to Atlona HDMI matrix switches. Attempts to follow mqtt-smarthome pattern.
mqtt2atlonamatrix
is a Node.js application that links Atlona HDMI matrix switches to an MQTT broker. It is designed to be used to integrate these devices into a home automation system à la mqtt-smarthome.
Getting Started
mqtt2atlonamatrix
is distributed through NPM:
npm install -g mqtt2atlonamatrix
# or, if you prefer:
yarn global add mqtt2atlonamatrix
Running it is likewise easy:
mqtt2atlonamatrix # if your MQTT broker is running on localhost
mqtt2atlonamatrix -b mqtt://<hostname> # if your broker is running elsewhere
mqtt2atlonamatrix --help # to see the full usage documentation
Topics and Payloads
This app is intended to conform to the mqtt-smarthome architecture. These are the topics used by mqtt2atlonamatrix
:
Topics Published
| Topic | Purpose |
|----------------------------------------|----------------------------------------------------------------------------------|
| atlonamatrix/connected
| 0 = not connected to anything1 = connected to MQTT but not DVR2 = connected to both.
| atlonamatrix/status/isOn
| Power state of the switch as a boolean
| atlonamatrix/status/hardwareInfo
| JSON-encoded hardware info; format: { "type": "", "version": "" }
| atlonamatrix/status/outputStatus
| The current status of each output as a lis
Topics Subscribed
For performance reasons, no argument checking is done: commands are passed diectly to the switch.
| Topic | Purpose |
|------------------------------------------|----------------------------------------------------------------------------------|
| atlonamatrix/get/isOn
| Force a refresh of the current power state
| atlonamatrix/get/hardwareInfo
| Force a refresh of the hardware info
| atlonamatrix/get/outputStatus
| Force a refresh of the current output status
| atlonamatrix/set/isOn
| Set the system to Off.
| atlonamatrix/set/output/{n}/input/{m}
| Set output n to display input m
| atlonamatrix/set/output/{n}/off
| Turn off output n
| atlonamatrix/set/safeOff
| Turn off the switch if all outputs are off
Contributing
Contributions are of course always welcome. If you find problems, please report them in the Issue Tracker. If you've made an improvement, open a pull request.
Getting set up for development is very easy:
git clone <your fork>
cd mqtt2atlonamatrix
yarn
And the development workflow is likewise straightforward:
# make a change to the src/ file, then...
yarn build
node dist/index.js
# or if you want to clean up all the leftover build products:
yarn run clean
Release History
- 1.0.0
- The first release.
Meta
Zach Bean – [email protected]
Distributed under the MIT license. See LICENSE for more detail.