Skip to content

bang-olufsen/esp-iot-solution

 
 

Repository files navigation

Documentation Status

Espressif IoT Solution Overview

ESP-IoT-Solution contains device drivers and code frameworks for the development of IoT systems, providing extra components that enhance the capabilities of ESP-IDF and greatly simplify the development process.

ESP-IoT-Solution contains the following contents:

  • Device drivers for sensors, display, audio, input, actuators, etc.
  • Framework and documentation for Low power, security, storage, etc.
  • Guide for espressif open source solutions from practical application point.

Documentation Center

Quick Reference

Development Board

You can choose any of the ESP series development boards to use ESP-IoT-Solution or choose one of the boards supported in boards component for a quick start.

Powered by 40nm technology, ESP series SoC provides a robust, highly integrated platform, which helps meet the continuous demands for efficient power usage, compact design, security, high performance, and reliability.

Setup Environment

Setup ESP-IDF Environment

ESP-IoT-Solution is developed based on ESP-IDF functions and tools, so ESP-IDF development environment must be set up first, you can refer Setting up Development Environment for the detailed steps.

Please note that different versions of ESP-IoT-Solution may depend on different versions of ESP-IDF, please refer to the below table to select the correct version:

ESP-IoT-Solution Dependent ESP-IDF Major Change User Guide Support State
master >= v4.4 support component manager and new chips Docs online active, new feature develop
release/v1.1 v4.0.1 IDF version update, remove no longer supported code v1.1 Overview archived
release/v1.0 v3.2.2 legacy version v1.0 Overview archived

Since the master branch uses the ESP Component Manager to manager components, each of them is a separate package, and each package may support a different version of the ESP-IDF, which will be declared in the component's idf_component.yml file

Get Components from ESP Component Registry

If you just want to use the components in ESP-IoT-Solution, we recommend you use it from the ESP Component Registry.

The registered components in ESP-IoT-Solution are listed below:

Component Name Version
aht20 Component Registry
at581x Component Registry
ble_conn_mgr Component Registry
ble_ota Component Registry
bootloader_support_plus Component Registry
button Component Registry
cmake_utilities Component Registry
esp_lcd_gc9b71 Component Registry
esp_lcd_panel_io_additions Component Registry
esp_lcd_nv3022b Component Registry
esp_lcd_sh8601 Component Registry
esp_lcd_spd2010 Component Registry
esp_lcd_st7701 Component Registry
esp_lcd_st77903_rgb Component Registry
esp_lcd_st77916 Component Registry
esp_lcd_st77922 Component Registry
esp_lcd_touch_spd2010 Component Registry
esp_simplefoc Component Registry
esp_sensorless_bldc_control Component Registry
esp_tinyuf2 Component Registry
extended_vfs Component Registry
gprof Component Registry
iot_usbh Component Registry
iot_usbh_cdc Component Registry
iot_usbh_modem Component Registry
ir_learn Component Registry
knob Component Registry
led_indicator Component Registry
lightbulb_driver Component Registry
esp_msc_ota Component Registry
openai Component Registry
pwm_audio Component Registry
usb_device_uvc Component Registry
usb_stream Component Registry
xz Component Registry
zero_detection Component Registry

You can directly add the components from the Component Registry to your project by using the idf.py add-dependency command under your project's root directory. eg run idf.py add-dependency "espressif/usb_stream" to add the usb_stream, the component will be downloaded automatically during the CMake step.

Please refer to IDF Component Manager for details.

Get ESP-IoT-Solution Repository

If you want to Contribute to the components in ESP-IoT-Solution or want to start from the examples in ESP-IoT-Solution, you can get the ESP-IoT-Solution repository by following the steps:

  • If select the master version, open the terminal, and run the following command:

    git clone --recursive https://github.com/espressif/esp-iot-solution
    
  • If select the release/v1.1 version, open the terminal, and run the following command:

    git clone -b release/v1.1 --recursive https://github.com/espressif/esp-iot-solution
    

Build and Flash Examples

We highly recommend you Build Your First Project to get familiar with ESP-IDF and make sure the environment is set up correctly.

There is no difference between building and flashing the examples in ESP-IoT-Solution and in ESP-IDF. In most cases, you can build and flash the examples in ESP-IoT-Solution by following the steps:

  1. Change the current directory to the example directory, eg cd examples/usb/host/usb_audio_player.
  2. Run idf.py set-target TARGET to set the target chip. eg idf.py set-target esp32s3 to set the target chip to ESP32-S3.
  3. Run idf.py build to build the example.
  4. Run idf.py -p PORT flash monitor to flash the example, and view the serial output. eg idf.py -p /dev/ttyUSB0 flash monitor to flash the example and view the serial output on /dev/ttyUSB0.

Some examples may need extra steps to setup the ESP-IoT-Solution environment, you can run export IOT_SOLUTION_PATH=~/esp/esp-iot-solution in Linux/MacOS or set IOT_SOLUTION_PATH=C:\esp\esp-iot-solution in Windows to setup the environment.

Resources

About

Espressif IoT Library. IoT Device Drivers, Documentations And Solutions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 97.9%
  • Python 0.9%
  • CMake 0.6%
  • C++ 0.6%
  • Shell 0.0%
  • Makefile 0.0%