M5stack programming without Arduino IDE : how ?
-
@jimit
Hi,
I have re-installed esp-idf and compiling a project for the WRover kit works nicely, as always.
Next, I have cloned M5Stack-IDF but it is not clear in my minds where the directory should go. Should individual components be copied into esp-idf's own components directory ?As per the M5Stack documentation (https://github.com/m5stack/M5Stack-IDF), make menuconfig should have some Arduino option ... but I don't see any
All other compilation issues could stem from this initial installation/configuration mistakes on my side.Any idea ?
TIA for your help !
-
@jimit
Hi,Now, make menuconfig has Arduino options.
I had followed
https://github.com/m5stack/M5Stack-IDF
which lacks some parts of
https://github.com/m5stack/M5Stack/blob/master/docs/esp-idf_component.mdBut now, when trying to use M5.xxx functions, the #include <M5Stack.h> yields in a missing M5Stack.h message.
I keep searching to solve the issues
-
@jrs Hi,
I checked my ESP-IDF and i still have setup issues.
Under Windows, I have the ESP-IDF directory and the M5Stack-IDF directory both installed in their own separate directory located at: c:\Users\myusername
I set this up many weeks ago so I don't recall what led me to install the directories there or if that is correct.
RE - Your last error message: "when trying to use M5.xxx functions, the #include <M5Stack.h> yields in a missing M5Stack.h message."
This is where I have that file located:
C:\Users\myusername\M5Stack-IDF\components\M5Stack\src\M5Stack.hI don't suppose it gave you any suggestion where it expected to find this file ?
Which OS are you running ?
Thanks for adding the links. They will be useful.
-
@jimit
I am running Mac OSIn my setup the M5Stack-IDF is in esp-idf.
I achieved to run esp-idf hello-world example on the M5Stack but I need to use M5 specific functions, hence the need for M5Stack.h I guess
The content of hello_world is (sorry indentation is not kept by this site FAQ engine):
build/
components/
arduino/
appveyor.yml
boards.txt
component.mk
cores/
docs/
Kconfig
libraries/
Makefile.projbuild
package/
package.json
platform.txt
programmers.txt
README.md
tools/
variants/
main
component.mk
hello_world_main.c
Makefile
README.md
sdkconfig
sdkconfig.oldI'll keep on tomorrow
-
@jrs Glad you seem to have it working.
Since yours is working, it should be safe to assume your setup is correct: with M5Stack-IDF installed in the ESP-IDF directory.
Thanks for the update....
-
The easyest way to start with ESP-IDF is by PlatformIO
That IDE include ESP-IDF, Arduino, Mbed... -
@calin Great tip re. PlatformIO - will take it for a spin...
-
Hello.
I started to use M5Stack a month ago. I tried several simple projects using Arduino IDE. Before moving to ESP-IDF based development, I tried a trivial (hello world) project to test my settings.Unfortunately, current https://github.com/m5stack/M5Stack-IDF looks outdated and incomplete. So I use https://github.com/m5stack/M5Stack as an IDF component as well as https://github.com/espressif/arduino-esp32 .
The project directory looks like the following.
Makefile sdkconfig components/ arduino/ (recursive clone of https://github.com/espressif/arduino-esp32, idf-update branch) M5Stack/ (clone of https://github.com/m5stack/M5Stack) component.mk (should be modified. See below) ... main/ component.mk main.cpp (copy of components/M5Stack/examples/Basics/Hello/Hello.ino)The only tweak I did is the addition of
src/utlitityto the end of these path variables incomponents/M5Stack/component.mk.COMPONENT_SRCDIRS := . src src/utility COMPONENT_ADD_INCLUDEDIRS := . src src/utilityWithout this modification, make cannot correctly find the source codes and headers under
src/utility.The above setup looks OK and works for other projects.
My questions are:
* Is this a correct setup for ESP-IDF projects? (Is there any better one?)
* Is there any way to avoid the modification ofcomponents/M5Stack/component.mk?Thank you for attention.
-
My forked and updated version (implementing the setup in my previous post) of M5Stack-IDF template project is available: https://github.com/wtakuo/M5Stack-IDF
-
@wtakuo Thank you!
-
I fixed my patch in https://github.com/wtakuo/M5Stack-IDF.
The path variables in
component.mkshould look like the following.COMPONENT_SRCDIRS := src src/utility src/Fonts COMPONENT_ADD_INCLUDEDIRS := srcAs shown in the above code, I added
src/Fontsto COMPONENT_SRCDIRS and removed unnecessary"."(current directory) from both paths. Header files in the subdirectories are specified using relative paths fromsrc. So we don't need to add these subdirectories toCOMPONENT_ADD_INCLUDEDIRS.Anyway, I sent pull request regarding this fix. If my PR is accepted, the patch file in https://github.com/wtakuo/M5Stack-IDF will be unnecessary.
-
Now my PR has just been incorporated into the latest commit of M5Stack. So I removed patch.txt.
In addition, to tidy up the repository of my fixed M5Stack-IDF, I moved my modifications to
components_patchbranch. Somainbranch no longer contains the fix now. If you'd like to try my fixed version of M5Stack-IDF, please do like the following commands.git clone --recursive -b components_patch https://github.com/wtakuo/M5Stack-IDF.gitSorry for inconvenience due to the changes.
-
Hi wtakuo,
thanks for your work on this…. Nice that M5Stack included your work.
Your efforts inspired me to give installation another crack – this time using Linux instead of Windows. MUCH better so far.
Just have to determine which serial port is in use… got a long list rather than a defined port when following the ESP-IDF setup guide that outlined how to distinguish the serial port in use. Will follow it up laterz.
-
For reference:
Arduino submodule failed. I downloaded the latest, like this (and working):
rm -r components/arduino/
git clone https://github.com/espressif/arduino-esp32.git components/arduino-esp32
cd components/arduino-esp32 && git submodule update --init --recursive && cd ../..Nice if this could be fixed in the code, wtakuo :)
-
Here is the article about programming with Arduino IDE
For Windows:
https://m5stack.readthedocs.io/en/latest/get-started/m5stack_core_get_started_Arduino_Windows.html
For MacOS:
https://m5stack.readthedocs.io/en/latest/get-started/m5stack_core_get_started_Arduino_MacOS.html
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login