repositorypackage
0.0.0-20241016212955-11550c5b40a4
Repository: https://github.com/leonlatsch/pc2mqtt.git
Documentation: pkg.go.dev
# README
pc2mqtt
Control your PC or homeserver with homeassistant or any other MQTT enabled home automation system.
Usage
pc2mqtt run on your pc or homeserver and exposes its state and actions via MQTT.
Exposed MQTT Components
- Power sensor
- Shutdown button
- Reboot button
Getting Started / Installation
Installation of pc2mqtt works a little different on windows vs linux.
Linux
- Download the latest binary from the releases
- Setup a systemd service running the binary on start
- Thats it
Windows
For windows pc2mqtt uses the windows-service-wrapper.
- Download the latest windows zip archive from the releases
- Unzip it to a directory of your choice
- In cmd run
pc2mqtt.exe install
andpc2mqtt.exe start
to install and start it as a windows service
Explaination: wrapped.exe
is the actual binary. pc2mqtt.exe is the windows service wrapper which installs the service using the xml config file. For more info have a look at the windows-service-wrapper.
Config
When first starting the application, a config.json
will be created right next to it. It looks like this:
{
"device_id": "63fbeebb-f107-4903-ab36-6104b9d802b0",
"device_name": "MY-PC-HOSTNAME",
"mqtt": {
"host": "<YOUR MQTT HOST>",
"port": 1883,
"username": "<MQTT USER>",
"password": "<MQTT PASSWORD>",
"auto_discovery_prefix": "homeassistant"
},
"debug_mode": false
}
Parameter descriptions
Parameter | Description | Default Value |
---|---|---|
device_id | A generated id to identify your device. | Generated. Can be changed |
device_name | How your device will be named in eg. homeassistant. | Defaults to hostname |
mqtt.host | Your MQTT hostname eg. 192.168.0.10. | |
mqtt.port | Your MQTT port. | 1883 |
mqtt.username | Your MQTT username. | |
mqtt.password | Your MQTT password. | |
mqtt.auto_discovery_prefix | The prefix used for the auto discovery messages. | homeassistant |
debug_mode | Enabled debug mode. Prints more logs and adds a "test" button. | false |