Hi, I would like to know whether there is some way to program the ULP processor in the ESP32 SoC alongside the Arduino framework.
I have heard of this tool called ulptool which seems to allow one to program the ULP coprocessor in assembly and interact with it via the Arduino framework, however it only seems to work with the Arduino IDE.
I was wondering if there is an equivalent tool or work around for platformio.
Cheers
Indeed, PlatformIO does not currently support this in the Arduino framework, only in the ESP-IDF framework (through ulp.py
, example ). This is also reported in Problem when compiling ESP32 ULP sources (framework Arduino) · Issue #315 · platformio/platform-espressif32 · GitHub and will be tracked there.
thowa
February 10, 2023, 12:00pm
3
The last post is nearly 2 years old.
Is it still up to date or is there a possibility meanwhile available?
Third-party libraries exist that solve this problem, see here .
I made a bunch of hello world examples on running ESP32-C6. One of them is on how to run Arduino in ESP-IDF with a c program running on the ulp.
Can be found here
Getting started hello world examples for ESP32-C6 in PlatformIO both in ESP-IDF and Arduino.md
# Congratulations starting out on Your ESP32-C6!
When I started working with the ESP32-C6, I quickly realized how confusing it could be to find simple, working examples for getting started in PlatformIO. I needed basic, functional repositories to understand the differences between using Arduino and ESP-IDF, and how to work with features like the Ultra-Low Power (ULP) core. After spending countless hours piecing together information from various sources, I decided to create my own set of examples.
This gist will not go into details on why to choose one approach over the other. That can be found elsewhere. But for those who wants to use PlatformIO its a good starting point for working code.
This gist provides an overview of five working repositories I’ve built, each focused on a **simple blink program**. These examples are designed to be easy to understand and get you started without unnecessary complexity. Each repo is ready to clone and run in PlatformIO, covering the different ways to program the ESP32-C6:
1. Pure Arduino framework
2. Arduino as a component in ESP-IDF
This file has been truncated. show original