Add README and start to work on build for prod guide
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
f8bcb63513
commit
540d10bf78
18
README.md
18
README.md
@ -1,2 +1,18 @@
|
|||||||
# SolarEnergy
|
# SolarEnergy
|
||||||
WIP project
|
A project to optimize solar energy production and consumption. It connect to a current meter to decides whether some appliances controlled by relays shall be turned on or not, based on criterias such as:
|
||||||
|
* Minimal uptime
|
||||||
|
* Minimal downtime
|
||||||
|
* Daily minimal runtime
|
||||||
|
* Estimated consumption
|
||||||
|
* Dependencies, conflicts
|
||||||
|
|
||||||
|
## Components
|
||||||
|
* [`central_backend`](./central_backend): The core component that connects all the other one and make the decisions to turn on or off devices
|
||||||
|
* [`central_frontend`](./central_frontend): Web UI to configure the devices and monitor them
|
||||||
|
* [`custom_consumtion`](./custom_consumption): Development tool used to test different production values
|
||||||
|
* [`esp32_device`](./esp32_device/): The code installed in the MCU that controls relays (Wt32-Eth01 devices)
|
||||||
|
* [`python_device`](./python_device/): An alternative to the esp32 to control relays. Not production ready.
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
* [Setup for development](./docs/SETUP_DEV.md) guide
|
||||||
|
* [Setup for production](./docs/SETUP_PROD.md) guide
|
48
docs/SETUP_PROD.md
Normal file
48
docs/SETUP_PROD.md
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
# Configure project for production
|
||||||
|
|
||||||
|
## Create production build
|
||||||
|
|
||||||
|
### Central
|
||||||
|
The production release of central backend and frontend can be realised on a computer which has NodeJS and Rust installed by executing the following command at the root of the project:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make
|
||||||
|
```
|
||||||
|
|
||||||
|
The backend will be available at this location:
|
||||||
|
|
||||||
|
```
|
||||||
|
central_backend/target/release/central_backend
|
||||||
|
```
|
||||||
|
|
||||||
|
### Python device
|
||||||
|
The Python device isn't production ready yet.
|
||||||
|
|
||||||
|
|
||||||
|
### ESP32 device
|
||||||
|
|
||||||
|
#### Flashing the device directly
|
||||||
|
Use the following commands to flash a device (inside ESP-IDF environnment):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
idf.py build
|
||||||
|
idf.py flash
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
#### Getting an OTA update
|
||||||
|
Use the following command to build an OTA update:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
idf.py build
|
||||||
|
```
|
||||||
|
|
||||||
|
The OTA update is then located in `build/main.bin`
|
||||||
|
|
||||||
|
|
||||||
|
## Pre-requisites
|
||||||
|
* A server running a recent Linux (Debian / Ubuntu preferred) with `central` as hostname
|
||||||
|
* DHCP configured on the network
|
||||||
|
|
||||||
|
## Configure server
|
||||||
|
TODO
|
Loading…
Reference in New Issue
Block a user