esp32-warm-water
esp32 based project for the control of a heating element based on temperature
|
esp-idf implementation of temperature controlled relay to switch a heating element to maintain water in a specific temperature range. A webserver is used to interface with the system and change the goal temperature, range from the goal and the relay state (forced on or off).
employs wifi, onewire and a relay to control the temperature of a body of water for the purpose of film development primarily. other uses include cooking and general chemistry.
the main motivation to do this project was to be able to better process c41 colour film.
this project is built using the Visual Studio Code esp-idf plugin.
configure it from command line using idf.py
or by using the cog in the plugin.
once it is configured, select the correct port of your ESP32 module and build and upload to it.
an explanation of the hardware setup will come at a later stage.
the files in the front/build
directory are for displaying via the webserver and are sort of a separate entity from the rest of the code.
they automatically get made into an image but don't seem to flash with the vscode extension buttons (as a result you may need to run idf.py -p PORT flash
for changes to persist).
the frontend can be coded in whatever framework you want as long as you can get it built into a flat file structure (all in one directory without subdirectories). i am partial to vanilla html, css and javascript but there are plenty of lightweight frameworks (like svelte and preact).
any file in front/build
should get flashed to /spiffs
but ensure that the front/build
directory doens't exceed the size of the /spiffs
partition (default 960KB).
/
- the root path which serves index.html
the project esp32-warm-water contains one source file in C language main.c. the file is located in folder [main](main).
esp-idf projects are build using cmake. the project build configuration is contained in CMakeLists.txt
files that provide set of directives and instructions describing the project's source files and targets (executable, library, or both).
below is short explanation of remaining files in the project folder.
for more information on structure and contents of esp-idf projects, please refer to Section Build System of the esp-idf programming guide.
automatically generated API documentation (doxygen) is available here.
the code in this project is licensed under the MIT license - see LICENSE for details.
idf.py -p PORT monitor
, and reboot your board to see if there are any output logs.menuconfig
menu, and try again.git submodule update --remote --recursive
- updates the checked out modules to the most recent commit to their main branchgit push all
- as setup with https://jigarius.com/blog/multiple-git-remote-repositories