Skip to content

kreier/ESP32

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 projects

GitHub release MIT license

After working with Arduino since 2015 I was more and more challenged by the limitations and needs of exernal modules to expand the capabilites. Since 2018 I started to first work with the ESP8266 thanks to the included WiFi and later to this ESP32 for faster speed, more storage and integrated Bluetooth.

Thanks to advancements you can get now an TTGO T-Display with WiFi, LiPo battery charge controller, USB-C connector, two input buttons and 1.18" color IPS display 135x240px for less than an original Arduino Uno (with just USB-B and nothing else). So let's list some repositories that build on the ESP32:

2020/11/24

A cost effective solution for students to enter the world of programming their own devices. With integrated display and battery connector their projects can be carried anywhere and the results shown to others. The integrated WiFi connects to the world.

2020/06/23

Measures the created electric energy on our renewable energy station at AISVN including photovoltaic cells, wind generator, battery voltages and temperature

2019/04/08

A robot car controlled by Bluetooth BLE .

Further smaller projects

The ESP32 are well suited for our data collection project at AISVN with many analog pins, deep sleep modes to work long on battery power and WiFi capabilities to transfer data to the internet. This is accompanied by sufficient fast processing power and large memory. Some projects that use the ESP32 are:

  • TTGO T-Display ESP32 board Small board with display, two buttons and battery connector 2020/11/24
  • solarmeter Measures the created electric energy on our renewable energy station at AISVN including photovoltaic cells, wind generator, battery voltages and temperature 2020/06/23
  • T200 robot car controlled by Bluetooth BLE 2019/04/08
  • Webserver in MicroPython with button control 2019/12/16

Webserver LED control

This repository collects smaller sniplets and projects that don't require its own repository. Some of these are:

  • Blink2020 only short flashing, HIGH/LOW easier to alter
  • Blink2020sweep find the pin the LED is attached to (different with every board ...)
  • ESP32 power consumption test script to place the ESP32 in different power modes to measure the energy consumption
  • I2C scanner scans the i2c bus for devices
  • i2cdetect replicates the output of the Raspberry Pi output. Here with rtc and flash on ZS-042:
i2cdetect
Scanning address range 0x00-0x7F
 
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  
50: -- -- -- -- -- -- -- 57 -- -- -- -- -- -- -- --  
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- --  
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  

Power Consumption

The measurements were taken at 28/11/2020 and are documented in the Excel file in ESP power consumption.

All values are in mA:

TTGO TTGO TTGO WEMOS DOIT
USB T18 3.0 T-Display T-Koala LoLin32 lite DEVKIT V1
on 47 68 35,8 47 68
wifi 70 83 100 83 100
wifi transmit 85 108 116 151
radio off 47 56
80 MHz 35 60 38
light sleep 19 9 0,79 8 17
deep sleep 0,35 4 16

And now looking for prospect temp station candidates:

LiPo T-Display T-Koala LoLin32 lite
on 68 50 43
wifi 84 104 73
wifi transmit 108 131 103
radio off 37 43
80 MHz 21 24
light sleep 9 2,5 1,6
deep sleep 0,18 0,79 0,063

History

This repository started in March 2019. I was new to the ESP8266 and ESP32 and took the first steps with both, documentation on GitHub and using BLE. The T200 was a successful robot car project from this time, controlled by Bluetooth BLE.

I wrote back then:

2019/03/24

We had several Arduino Uno projects at our school. But soon you want to add some bluetooth or WiFi functionality to your project. You need another module, library, cable and so on. Why not use the ESP32 that has all that out of the box? And much more RAM and storage for data and all kinds of projects? That's why it's here. Let's start simple.

ESP32

Blink

Unlike the Arduino the build-in LED is not connected to pin 13, but pin 2. Everything else is the same. Once it blinks you know that the module works, you can upload stuff and you have a simple output signal for further experiments. If you use the board "DOIT ESP32 DEVKIT V1" you can use the "File > Examples > 01.Basics > Blink out of the box.

BLE with iPhone remote

Bluetooth Low Energy BLE is a little more complicated than Bluetooth 2.0. The ESP can do both, and the serial connection with an ESP32 is pretty straight forward. Comparable with a HC-05.

BLE is a little more complicated, because there are services, characteristics, descriptors, properties, values and several of them with their own UUID. Using nRF Connect, BLE Scanner and LightBlue it was easy to connect to the ESP with the build-in examples. But I wanted to use the remote app GoBLE. More in the Wiki.