botofancalin/M5Stack-MultiApp-Advanced

Precompiled Firmware did not work.

Closed this issue · 14 comments

I flashed the M5StackMultiApp.bin file from the Precompiled Firmware folder but the device did nothing.
I then tried the same with your "M5Stack_MultiApp_Firmware" and that one worked just fine.
Any ideas what could be the issue.
I opened the terminal after flashing and this is all it showed.

rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:812
load:0x40078000,len:0
load:0x40078000,len:11404
entry 0x40078a28
user code done

I am having the same issue.

same problem here.

The bootloader on your M5Stack might be incompatible. Try to build the firmware using PlatformIO

trying it on Platform.io, now gives the following error.

Error: The data size (653716 bytes) is greater than maximum allowed (294912 bytes)

*** [checkprogsize] Explicit exit, status 1
DATA: [==========] 221.7% (used 653716 bytes from 294912 bytes)
PROGRAM: [==========] 114.1% (used 1495045 bytes from 1310720 bytes)
esptool.py v2.3.1
[ERROR] Took 42.61 seconds

**Please make sure you use the latest Espresiff32 platform version (1.0.2 at this momment) on PlatformIO.
I just tested on PlatformIO and it work perfectly:

Linking .pioenvs\m5stack-core-esp32\firmware.elf
Building .pioenvs\m5stack-core-esp32\firmware.bin
Retrieving maximum program size .pioenvs\m5stack-core-esp32\firmware.elf
Checking size .pioenvs\m5stack-core-esp32\firmware.elf
Memory Usage -> http://bit.ly/pio-memory-usage
DATA: [== ] 17.2% (used 50788 bytes from 294912 bytes)
PROGRAM: [======= ] 74.3% (used 1460890 bytes from 1966080 bytes)
esptool.py v2.3.1
Configuring upload protocol...
AVAILABLE: esptool
CURRENT: upload_protocol = esptool
Looking for upload port...
Auto-detected: COM10
Uploading .pioenvs\m5stack-core-esp32\firmware.bin
esptool.py v2.3.1
Connecting....
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 12480 bytes to 8255...
Wrote 12480 bytes (8255 compressed) at 0x00001000 in 0.1 seconds (effective 899.5 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 144...
Wrote 3072 bytes (144 compressed) at 0x00008000 in 0.0 seconds (effective 4096.0 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 13106.9 kbit/s)...
Hash of data verified.
Compressed 1462144 bytes to 902091...
Wrote 1462144 bytes (902091 compressed) at 0x00010000 in 16.2 seconds (effective 721.7 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
==================================================================================== [SUCCESS] Took 44.10 seconds ====================================================================================

Strange, as I am using the latest. What does your platformio.ini contain ?

I am using the platformio.ini from repository: https://github.com/botofancalin/M5Stack-MultiApp-Advanced/blob/master/platformio.ini

Try to uninstall the espresiff32 platform from platformio. Then build the project.
When the build start, platformio will download and install the platform then will compile the project:

Executing task: C:\Users\Calin.platformio\penv\Scripts\platformio.exe run --target upload
[06/07/18 20:14:41] Processing m5stack-core-esp32 (framework: arduino; platform: espressif32; board: m5stack-core-esp32)
PlatformManager: Installing espressif32
Downloading [####################################] 100%
Unpacking [####################################] 100%
espressif32 @ 1.0.2 has been successfully installed!
The platform 'espressif32' has been successfully installed!
The rest of packages will be installed automatically depending on your build environment.
PackageManager: Installing toolchain-xtensa32 @ ~2.50200.0
Downloading [####################################] 100%
Unpacking [####################################] 100%
PackageManager: Installing tool-mkspiffs @ ~2.230.0
Downloading [####################################] 100%
Unpacking [####################################] 100%
PackageManager: Installing framework-arduinoespressif32 @ ~1.5.3
Downloading [####################################] 100%
Unpacking [####################################] 100%
PackageManager: Installing tool-espotapy @ ~1.1.0
Downloading [####################################] 100%
Unpacking [####################################] 100%
PackageManager: Installing tool-esptoolpy @ ~1.20310.0
Downloading [####################################] 100%
Unpacking [####################################] 100%
Verbose mode can be enabled via -v, --verbose option
PLATFORM: Espressif 32 > M5Stack Core ESP32
SYSTEM: ESP32 240MHz 288KB RAM (1.25MB Flash)
Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF MODES: FINDER(deep) COMPATIBILITY(soft)
Collected 36 compatible libraries
Scanning dependencies...
Dependency Graph

Compiles now, thank you. What is the purpose of the resources.h file?

It contain the menu images.

Was finally able to get everything compiling and flashed. Platformio tries to autodetect the target port even though I specified a specific COM port. It ended up reprogramming one of my other connected EPS32 boards.

I have the Wunderground key and other settings in the weather file but when I select weather, it hangs on "Reading weather info...". Weatherparams.txt looks like this:

CITY=Ottawa;
COUNTRY=Canada;
LANGUAGE=EN;
APIKEY=xxxxxxxxxxxxx;
TIME_OFFSET=-4;

Any thoughts?

Mine hangs as well with the same thing on the LCD.

There are some compatibility issues between the latest idf version and the weather api. I will check and solve this problem on this weekend.

Try to flash the precompiled firmware. That firmware was built using older idf version.

I updated the weather app. It work's fine now.
Please pull the latest commit.

Precompiled firmware removed. Compile the code to get the firmware running.