Install Python 3.11. Then
python -m venv venvsource venv/bin/activatepip install -r requirements.txt
This will install all dependencies for firmware and documentation development into a virtual environment and activate it. To leave the virtual environment, run deactivate.
The Datenzwerg firmware is based on esphome which gets installed as dependency when running the above setup command.
To flash your own Datenzwerg, navigate to the firmware directory, then
- Copy
secrets-template.yamltosecrets.yamland fill in your WiFi and InfluxDB2 credentials. - Run
esphome -s name <gnome> run datenzwerg.yamlto compile and flash the firmware for your gnome named<gnome>.
The gnome model files are based on https://www.printables.com/model/260908-garden-gnome by Sci3D, released under CC-BY.
In the models directory, you will find the following files:
datenzwerg_40p_1.2mm.blend: Main design file, edit with Blenderdatenzwerg_40p_1.2mm_top.stl: Upper body, electronics compartmentdatenzwerg_40p_1.2mm_bottom.stl: Lower body, feet, mount pointdatenzwerg_40p_1.2mm_bottom_poe.stl: Lower body, feet, mount point, PoE version
The documentation is built with MkDocs which gets installed as dependency when running the above setup command. The documentation source files are located in the docs directory, the configuration in mkdocs.yml in the project root.
To run a live-reload server, run
mkdocs serve
To build the documentation, run
mkdocs build