Compare commits
1 commit
master
...
nodes/buer
Author | SHA1 | Date | |
---|---|---|---|
Jannik Beyerstedt | 4c027805dc |
26
README.md
26
README.md
|
@ -13,12 +13,9 @@ This repository contains the code running on the ESP32, as well as the PCB and c
|
|||
|
||||
|
||||
## Dependencies
|
||||
The [esp32-idf](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/index.html#installation-step-by-step) is needed to compile software for the ESP32.
|
||||
The following sections will install to `~/Development/esp32` as an example.
|
||||
|
||||
Prepare toolchain (macOS):
|
||||
```
|
||||
cd ~/Development/
|
||||
cd ~/JBeyerstedt-Projekte/
|
||||
mkdir ./esp32
|
||||
cd esp32
|
||||
curl https://dl.espressif.com/dl/xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz -o xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz
|
||||
|
@ -26,7 +23,7 @@ tar -xzf xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz
|
|||
rm xtensa-esp32-elf-osx-1.22.0-80-g6c4433a-5.2.0.tar.gz
|
||||
```
|
||||
|
||||
Prepare toolchain (Debian, Ubuntu):
|
||||
Prepare toolchain (Debian, Ubuntu) (ubuntu devel vm):
|
||||
```
|
||||
sudo apt-get install git wget make libncurses-dev flex bison gperf python python-serial
|
||||
|
||||
|
@ -40,13 +37,17 @@ rm xtensa-esp32-elf-linux64-1.22.0-73-ge28a011-5.2.0.tar.gz
|
|||
|
||||
Add to your bash profile, zshrc or other:
|
||||
```
|
||||
export PATH=$PATH:$HOME/JBeyerstedt-Projekte/esp32/xtensa-esp32-elf/bin
|
||||
export IDF_PATH = $HOME/JBeyerstedt-Projekte/esp32/esp-idf
|
||||
```
|
||||
or for ubuntu devel vm:
|
||||
```
|
||||
export PATH=$PATH:$HOME/Development/esp32/xtensa-esp32-elf/bin
|
||||
export IDF_PATH = $HOME/Development/esp32/esp-idf
|
||||
```
|
||||
|
||||
Install esp-idf:
|
||||
```
|
||||
cd ~/Development/esp32
|
||||
git clone --recursive https://github.com/espressif/esp-idf.git
|
||||
```
|
||||
|
||||
|
@ -54,9 +55,13 @@ git clone --recursive https://github.com/espressif/esp-idf.git
|
|||
|
||||
## Checkout this project and configure arduino-esp32 with esp-idf:
|
||||
```
|
||||
mkdir -p components && cd components
|
||||
git clone https://github.com/espressif/arduino-esp32.git arduino && cd arduino
|
||||
git submodule update --init --recursive
|
||||
TODO!!
|
||||
|
||||
mkdir -p components && \
|
||||
cd components && \
|
||||
git clone https://github.com/espressif/arduino-esp32.git arduino && \
|
||||
cd arduino && \
|
||||
git submodule update --init --recursive && \
|
||||
cd ../..
|
||||
```
|
||||
|
||||
|
@ -82,9 +87,8 @@ You would probably have to adapt the `UPLOAD_PORT` in the `Makefile` or set it v
|
|||
## Battery Life
|
||||
The hardware was designed with two options to drop the battery voltage to a level, which can be fed to the ESP32: A voltage regulator or a simple diode.
|
||||
|
||||
A test with increased data rate (for a shorter test duration) resulted in a slightly better battery life using the voltage regulator.
|
||||
A test with increased data rate (for a shorter test duration) showed, that the voltage regulator leads to a slight battery life benefit.
|
||||
Using a measurement interval of 30 seconds and a WiFi connection interval of 3 minutes, the 2500mAh LiIon (3.7V) battery lasted 30 days with the diode and 36 days using the voltage regulator.
|
||||
In real-world application, a battery life of about 9 months can be expected (with good WLAN reception).
|
||||
|
||||
The selected voltage regulator has a quite low drop-out voltage and more importantly a low leaking current during the deep-sleep phases, which have a very low current needed by the ESP32.
|
||||
In comparison a diode has no leaking current at all, but a more or less fixed voltage drop.
|
||||
|
|
|
@ -18,13 +18,13 @@
|
|||
#define BOARD_ESP32 4 /* standalone ESP32 */
|
||||
|
||||
/* DEBUG SETTINGS */
|
||||
#define TEST /* use test config and database */
|
||||
// #define TEST /* use test config and database */
|
||||
#define PRINT_INFO /* enable Serial output */
|
||||
// #define PRINT_DEBUG /* enable additional debug output */
|
||||
|
||||
/* CONFIGURATION OPTIONS */
|
||||
#ifndef NODENAME
|
||||
#define NODENAME "env-TODO" /* IMPORTANT: CHANGE FOR EACH DEVICE */
|
||||
#define NODENAME "env-buero" /* IMPORTANT: CHANGE FOR EACH DEVICE */
|
||||
#endif
|
||||
|
||||
#ifndef BOARD
|
||||
|
|
Loading…
Reference in a new issue