Code Monkey home page Code Monkey logo

esp32-playground's Introduction

Arduino + ESP32

In this project I used both the capabilities of the Arduino and ESP-IDF with FreeRTOS.

PlatformIO Project Configuration

  • Platform: WEMOS LOLIN32
  • Framework: Arduino
  • Upload Method:
    • esptool (Default)
    • jlink
    • esp-prog (Based on FT2232H or FT232H)
  • Debug Method:
    • esp-prog (Based on FT2232H or FT232H)

Board Pinout

Notes

Use only core 0 for demo purposes

Set CONFIG_FREERTOS_UNICORE=y in sdkconfig.lolin32 to use only core 0 for demo purposes.

Prevent Task watchdog got triggered warning

Add a small delay (10ms) to infinite loops to prevent Task watchdog got triggered warning.

Or you can set priority of all tasks to 0 (Idle).

Debugging

Debugging feature of PlatformIO for Esp32 is buggy. But if you set the framework to Arduino, you can have a bit better debugging experience than ESP-IDF framework.

The hardware used for debugging ESP32 is an FT232H USB-JTAG adapter:

Connect ESP32 to FT232H USB-JTAG adapter according to the following table:

ESP32 FT232H
GPIO12 AD1 (TDI)
GPIO13 AD0 (TCK)
GPIO14 AD3 (TMS)
GPIO15 AD2 (TDO)
GND GND

For more information, read the following articles:

Get rid of Arduino setup() and loop()

Just start your program from extern "C" void app_main(void) instead of void setup() and void loop().

Run menuconfig in PlatformIO

pio run -t menuconfig
Note: Use `J` and `K` instead of up and down arrow keys to move between items in `menuconfig`

References

1-Wire

SPI

File Systems

SPIFFS

esp32-playground's People

Contributors

m3y54m avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.