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
|
||||
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