Building Core2 FactoryDemo in PlatformIO
greenleaf last edited by
If anyone else is trying to do this you'll need to fix your partition table to take advantage of the larger memory. The steps how to do this are:
- Go to PIO Home in Visual Studio Code
- Click on
- Name it m5core2 or similar. Choose
M5Stack Core ESP32for the board.
- Leave Framework set to Arduino.
- Open your platformio.ini file and replace the text with this:
[env:m5stack-core-esp32] platform = espressif32 board = m5stack-core-esp32 framework = arduino ; [[[for macos]]] ;upload_port = /dev/cu.SLAB_USBtoUART ; [[[fix PSRAM size and you won't need have this file]]] board_build.partitions = default_16MB.csv build_flags = -DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue
- Copy the 16MB partition table file into your src directory. You can download this file here:
- In the 'lib' directory you will need three libraries.
FastLED - https://github.com/FastLED/FastLED
M5Core2 - https://github.com/m5stack/M5Core2
ArduinoECCX08 - This one is in a zip file in the M5Core2 library repo:
Your lib directory should look like this when you're done:
- Now copy everything from the example FactoryTest directory in the M5Core2 library into your
srcfolder. The directory files can be viewed here:
Rename FactoryTest.ino to main.cpp
Edit main.cpp and comment out these two lines with
//. These tests will fail if you don't have an SDCard or something plugged into the IO port.
Connect your M5Core2 and build/upload. You can do CTRL-Shift-P to find the Platformio:Upload option.
Play with the cool factory demo!
Thanks to jokercatz for the tip on fixing the platform:
Zontex last edited by
Great post! thank you for sharing your with us your knowledge, will be pretty useful for many users over here.
masterPen6 last edited by
Could i build and upload every example ( in my case the Core2 AWS ) with platform IO or i need to use idf.py from ESP-IDF ?
When i use platform IO i already have the ESP-IDF install i suppose.
In all cases i need it to edit the configuration with the command "idf.py menuconfig" (right?), example in this step https://edukit.workshop.aws/en/blinky-hello-world/connecting-to-aws.html#configuring-the-esp32-firmware
There are modifications that need to be done to use all the examples with PlatformIO. Currently we are requiring the use of ESP-IDF v4.2 and at the moment PlatformIO only supports 4.1. You could modify the projects and they should work:
- Rename the "main" directory to "src"
- Possibly update cmakelists.txt files (depends on example)
smuasini last edited by
Hi @greenleaf Are you using the M5GO Battery Bottom2? Tried following your step-by-step and it is just stuck at AT608A Check failed.
Mine is core2 without the battery bottom.
This is specifically for the Core2 for AWS IoT EduKit hardware. The regular Core2 and/or the standard M5Go bottom will not work with this firmware.
DannyG86 last edited by
Thanks for the guidance.
How could this be adjusted for the M5AtomLite, M5Stack Basic and M5Paper ?
jimwsmith last edited by
@rashedtalukder Actually if you comment out the code checking for AT608A chip it works on plain Core 2
jimwsmith last edited by
I found the actual Factory Test code for the Core 2 as this example is for the AWS Core 2
There are pin differences for some of the features, but yes you can disable the atecc608 part of the code.