I know nothing about Python¶
First, welcome to the Python community. If you’re new to Python programming, it can be hard to know where to start.
I highly recommend to start with a complete distribution. That will help you a lot as the majority of important modules will be installed for you.
If you are using Windows, it will simplify your life as some modules needs a C compiler and it can be hard sometimes to compile a module by yourself.
If you are using a RaspberryPi, have a look to miniconda or berryconda. Both can allow a complete installation of modules like bokeh and Flask. For berryconda, once it’s done, run conda install pandas. This will install pandas on your RaspberryPi without the need to compile it.
Installing a complete distribution¶
Begin by downloading Anaconda. Install it. Once it’s done, you’ll get access to a variety of tools like :
- Spyder (and IDE to write the code)
- Anaconda Prompt (a console configured for Python)
- Jupyter Notebook (Python in your browser)
- pip (a script allowing you to install modules)
- conda (a package manager used by Anaconda)
Start using pip¶
Open the Anaconda Prompt (a console terminal with Python configured in the path)
pip install BAC0
This simple line will look in Pypi (The Python Package Index), download and install everything you need to start using BAC0
Check that BAC0 works¶
In the terminal again, type
This will open a python terminal. In the terminal type
>>import BAC0 >>BAC0.version
This will show you the installed version. You’re good to go.
Where to download the source code¶
There you’ll be able to open issues if you find bugs.
BAC0 is based on BACpypes for all BACnet/IP communication.
Starting at version 0.9.900, BAC0 will not strictly depend on bokeh or Flask or Pandas to work. Having them will allow to use the complete set of features (the web app with live trending features) but if you don’t have them installed, you will be able to use the ‘lite’ version of BAC0 which is sufficient to interact with BACnet devices.
It uses Bokeh for Live trending features
It uses Pandas for every Series and DataFrame (histories)
It uses Flask to serve the Web app (you will need to pip install flask_bootstrap)
pip install bacpypes pip install bokeh (or conda install bokeh if using Anaconda)
You’re ready to begin using BAC0 !