/esp32-everest-run

Internet connected altimeter for Everest Run - http://everestrun.pl/

Primary LanguageCApache License 2.0Apache-2.0

esp32-everest-run

Internet connected altimeter for Everest Run - http://everestrun.pl/

alt text

Components

  1. ESP32 Wi-Fi + Bluetooth Combo Chip by Espressif
  2. BMP180 Barmoetric Pressure Sensor
  3. esp-idf Espressif IoT Development Framework for ESP32

Build Status

Build Status

Work Progress

  • Prepare a prototype using ESP32-DevKitJ-v1 development board
  • Develop an I2C driver to read altitude from BMP180 sensor
  • Synchronize time on ESP32 by obtaining it from a NTP server
  • Compensate altitude measurement using sea level pressure obtained on-line
  • Publish altitude measurements in real time on ThingSpeak and KeenIO
  • Implement data buffering on ESP32 for the period of likely Wi-Fi connection losses
  • Build lightweight, battery powered altimeter using bare ESP-WROOM-32 module
  • Test altimeter during weekly trainings organized by the group Biegamy po schodach
  • Complete Everest Run by climbing 2730 floors on 18 and 19 February 2017

Altitude Measurements On-line

Test data feed is available under https://thingspeak.com/channels/208884

Log Book

For more details on project progress, please check log book.

Installation Overview

Configure your PC according to ESP32 Documentation. Windows, Linux and Mac OS are supported.

You can compile and upload code to ESP32 from command line with make or using Eclipse IDE.

If this is you first exposure to ESP32 and esp-idf, then get familiar with hello_world and blink examples. In next step check more advanced examples that have been specifically used to prepare this application: http_request, sntp and sd_card.

Compilation and upload of this application is done in the same way like the above examples. To make testing more convenient you can use ESP-WROVER-KIT that has micro-sd card slot installed.

Acknowledgments

This application is using code developed by:

  • jsmn a minimalistic JSON parser by Serge Zaitsev
  • Software I2C library for ESP31B by Hristo Gochkov
  • http_request example by Angus Gratton
  • sntp example by Ivan Grokhotkov
  • sd_card example by Ivan Grokhotkov