Closed proddy closed 2 months ago
I suggest we change the platformio env names, the GitHub actions and the Web firmware download code to build and check for these variants:
EMS-ESP-<version>-<chip type>-<flash mem>.bin
chip type
is S, S3, perhaps C3
flash mem
is 4, 16, 32
do we need to explicitly check for PSRAM too?
@MichaelDvP I am missing anything?
I think we should check the common chips and the BBQKees gateways, form old to new:
For C3 and S2 we don't have prcompiled firmare. Also for 32M chips, there was only a S3-32M with OPI-flash that needs a special compile env.
Okay. We still need a naming convention and then we can code it. The chip types are only ESP and ESP-S3 for now. Are you suggesting we don't keep it ESP generic but use the BBQKees gateway naming? I'm fine with either approach.
I think it's all ok, but use in uploadDownload.tsx:
const getPlatform = () => {
if (data.flash_chip_size >= 16384 && data.esp_platform === 'ESP32' && data.psram) {
return data.esp_platform + '-16M';
}
return data.esp_platform;
};
to match only the E32V2 for the 16M update. (or user modules with ESP32 and at least 16M and PSRAM)
1, 2 and 3 are the ESP8266 Gateways that were user-upgraded with a new module so those would all more or less fall under 9.
When it became apparent that EMS-ESP could benefit from more RAM, i started working on new models with PSRAM. Now we have the currently available models the S3 and the E32 V2.
Because Espressif removed the hardware Ethernet support from the ESP32-S3, I opted for the ESP32 with PSRAM for the ESP32 V2 so Ethernet would remain rock solid. As the S3 Gateway only has Wi-Fi, I could use the ESP32-S3 on that one.
https://bbqkees-electronics.nl/wiki/gateway/hardware-details.html
Format now is:
EMS-ESP-<version>-<chip type>-<flash mem>[+].bin
chip type
is as defined in esp_platform from pio. ESP32
, ESP32S3
, ESP32C3
etc. All uppercase.
flash mem
is either 4MB
or 16MB
.
+
is added at the end if there is PSRAM
example:
There is one catch with this change. Because of the filename change, the links from the Web download/upload page will be wrong. For the dev version, you will need to manually pull the binary from the GH Release page. And for those on Stable the same. When we have 3.7.0 into Stable everything will be aligned again.
As Michael reported in #1930
The S32 gateways (without S3) have 16M flash without PSRAM, It can't handle the 16M file. The 16M file is compiled with -DEMSESP_DEFAULT_BOARD_PROFILE="E32V2 and defaults on factory reset to the wrong board-pins when flashed to S32.
Originally posted by @MichaelDvP in https://github.com/emsesp/EMS-ESP32/issues/1930#issuecomment-2282749387
Today it looks like: