https://github.com/freshollie/bacprop
A zero-configuration MQTT to BACnet gateway
https://github.com/freshollie/bacprop
asyncio bacnet bacpypes iot mqtt python
Last synced: about 1 year ago
JSON representation
A zero-configuration MQTT to BACnet gateway
- Host: GitHub
- URL: https://github.com/freshollie/bacprop
- Owner: freshollie
- License: mit
- Created: 2019-05-30T14:26:55.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-07-22T07:11:30.000Z (almost 3 years ago)
- Last Synced: 2025-04-05T15:11:23.619Z (about 1 year ago)
- Topics: asyncio, bacnet, bacpypes, iot, mqtt, python
- Language: Python
- Homepage:
- Size: 98.6 KB
- Stars: 5
- Watchers: 6
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# BACprop
[](https://gitlab.com/freshollie/bacprop/commits/master)
[](http://freshollie.gitlab.io/bacprop)
[](https://github.com/python/black)
A MQTT to BACnet relay. Translating IoT data into virtual sensors on a bacnet network.
## Usage
Running `bacprop` on a local network will allow IoT devices to send MQTT data representing sensor data to
`bacprop` where the sensor will be represented as a BACnet object on the same network.
The sensor must send a JSON MQTT message on the channel `sensor/`. The JSON object keys
will be translated to the properties of the BACnet Object, with the sensorId as the ID of the object.
A sensor message might look like:
```json
{
"sensorId": 2,
"temp": 5.3,
"co2": 502
}
```
`bacprop` will mark faultly any sensor object which it has no received data from
after 10 minutes, as specified in the `bacprop/service.py` definition.
## Developing
`bacprop` is developed using `pipenv`
`pipenv install --dev` will install all requirements for development to take place.
## Testing
`bacprop` is 100% unit tested, and all changes should continue this.
`pipenv run python -m bacprop` can be used to test changes
`pipenv run test` will run all tests
## Running
`pipenv install` will install all requirements for running
`pipenv run python -m bacprop`
## Docker
Docker images have been provided for `bacprop`. Both an armv6 image and a x86 image exist.
## License
`MIT`