Go to file
2020-08-06 18:14:24 -04:00
extras Finish trainola testing and porting to Python 3 2020-08-06 13:36:28 -04:00
nilmtools Fix flake8 errors throughout code 2020-08-06 17:58:41 -04:00
tests Flesh out remaining tests and Python 3 fixes 2020-08-06 17:29:30 -04:00
.coveragerc Add test framework, and initial test for nilm-copy 2020-08-04 13:58:07 -04:00
.gitattributes Large restructuring, added setup 2013-03-11 18:06:55 -04:00
.gitignore Use multiprocessing to start multiple servers in tests 2020-08-04 23:37:24 -04:00
Makefile Cleanup Makefile 2020-08-06 17:32:06 -04:00
MANIFEST.in Start Python 3 conversion 2020-08-04 10:42:00 -04:00
README.md Start Python 3 conversion 2020-08-04 10:42:00 -04:00
requirements.txt Freeze requirements 2020-08-06 18:14:24 -04:00
setup.cfg Fix flake8 errors throughout code 2020-08-06 17:58:41 -04:00
setup.py Fix #! at top of shell scripts for py3 and venvs 2020-08-05 17:04:28 -04:00
versioneer.py Update versioneer 2020-08-05 17:04:58 -04:00

nilmtools: Tools and utilities for NilmDB

Tools and utilities for interacting with the NILM Database, or writing programs that interact with the NILM database.

by Jim Paris jim@jtan.com

Prerequisites:

# Runtime and build environments
sudo apt-get install python3

# Create a new Python virtual environment to isolate deps.
python3 -m venv ../venv
source ../venv/bin/activate   # run "deactivate" to leave

# Install all Python dependencies
pip3 install -r requirements.txt

Install:

Install it into the virtual environment

python3 setup.py install

If you want to instead install it system-wide, you will also need to install the requirements system-wide:

sudo pip3 install -r requirements.txt
sudo python3 setup.py install

Building new tools:

The tools in this package are meant to be installed with python3 setup.py install. If you want to make a new one, an easier way to develop would be to first install this package, and then copy a specific script like src/sinefit.py to a new location, and modify it as desired.

To add a tool to the package, place it in src/ and add the appropriate configuration to setup.py.