Client BACnet library for Flexit Nordic series of air handling units.
Project description
Flexit BACnet
This library allows integration with Flexit Nordic series of air handling units via BACnet protocol.
Prerequisites
In order to use that library, you need to know the IP address and Device ID of your unit.
- Open Flexit Go app on your mobile.
- Use "Find product" button on tha main screen.
- Select your device and press "Connect".
- Enter installer code (default: 1000) and press "Login".
- Open "More" menu -> Installer -> Communication -> BACnet settings.
- Note down "IP address" and "Device ID".
You need to have Python version 3.7 or above.
Connecting to a device
import asyncio
# import FlexitBACnet
from flexit_bacnet import FlexitBACnet
async def main():
# create a FlexitBACnet device instance with the IP address and Device ID
device = FlexitBACnet('192.168.0.18', 2)
await device.update()
# check device name and s/n
print('Device Name:', device.device_name)
print('Serial Number:', device.serial_number)
if __name__ == "__main__":
asyncio.run(main())
Interacting with the device
For list of available states and interactions, please study device.py.
For example, changing ventilation mode can be done as follows:
import asyncio
# import FlexitBACnet
from flexit_bacnet import (
FlexitBACnet,
VENTILATION_MODE_HIGH
)
async def main():
# create a FlexitBACnet device instance with the IP address and Device ID
device = FlexitBACnet('192.168.0.18', 2)
await device.update()
# check current ventilation mode
print('ventilation mode (before):', device.ventilation_mode)
# set ventilation mode to High
await device.set_ventilation_mode(VENTILATION_MODE_HIGH)
# check current ventilation mode again
print('ventilation mode (after):', device.ventilation_mode)
if __name__ == "__main__":
asyncio.run(main())
Which would result in the following output:
ventilation mode (before): 3
ventilation mode (after): 2
Examples
To execute examples without installing the package, set PYTHONPATH to local directory, e.g.:
PYTHONPATH=. python3 examples/current_mode.py 192.168.0.100
Where 192.168.0.100 should be replaced with your unit's IP address.
Finding device IP address
If you don't know the IP address of your unit, you can use the following script to find it:
PYTHONPATH=. python3 examples/discover.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file flexit_bacnet-2.2.1.tar.gz
.
File metadata
- Download URL: flexit_bacnet-2.2.1.tar.gz
- Upload date:
- Size: 13.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b59c667e8092199b0c44a12211d9f2712d3d4ef5223563a9f484a32d6f1dc780 |
|
MD5 | b528e8841f1563a0c867492e4f6fed24 |
|
BLAKE2b-256 | 34f63c03fe046ff69826b2d396e7f1fdd0baabca62a82fd4ccda30d78021a67a |
File details
Details for the file flexit_bacnet-2.2.1-py3-none-any.whl
.
File metadata
- Download URL: flexit_bacnet-2.2.1-py3-none-any.whl
- Upload date:
- Size: 13.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8236bb89ae73b0df41825817b73361932d511c7fdb2f583b3ff92492f074f03 |
|
MD5 | f6c3eefe234c19418305ed076da1df4a |
|
BLAKE2b-256 | 6926c18c21e9caa668943c31653669096b72e307619dff01dffed50e78cfba0e |