Skip to content

Platformio broken with actual master #7572

Closed
@Jason2866

Description

@Jason2866

Board

every

Device Description

not relevant

Hardware Configuration

not relevant

Version

latest master (checkout manually)

IDE Name

Platformio (custom self build)

Operating System

macOS 12.3

Flash frequency

40 Mhz

PSRAM enabled

yes

Upload speed

115200

Description

@me-no-dev
Compile fails with Platformio at the stage where esptool.py merge command is done.
https://github.com/espressif/arduino-esp32/blob/master/tools/platformio-build.py#L91

There are no bootloader*.bin files anymore in folder sdk/esp*/bin just *.elf files

Sketch

Every sketch

Debug Message

none

Other Steps to Reproduce

none

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.

Activity

me-no-dev

me-no-dev commented on Dec 11, 2022

@me-no-dev
Member

@Jason2866 that is true. We need PIO to update their stuff to generate bins, like we do in the IDE.

cc @ivankravets @valeros

Jason2866

Jason2866 commented on Dec 11, 2022

@Jason2866
CollaboratorAuthor

@me-no-dev Interested in reason for the change. What is the benefit for using *.elf files?

ivankravets

ivankravets commented on Dec 11, 2022

@ivankravets
Contributor

Thanks, @me-no-dev, for pinging us. We will update our develop branch.

me-no-dev

me-no-dev commented on Dec 12, 2022

@me-no-dev
Member

@Jason2866 if we use precompiled bins, the bootloader complains that the checksum of the firmware is wrong any time that settings (partitions, size, speed, etc.) differ from what the bootloader was compiled with. In order to get around that, we need to use elfs and turn them into bins with the same settings as the firmware at build time.

@ivankravets you are welcome :) Sorry I did not mention this earlier!

TD-er

TD-er commented on Dec 12, 2022

@TD-er
Contributor

What does this do to OTA updates?

me-no-dev

me-no-dev commented on Dec 12, 2022

@me-no-dev
Member

@TD-er as long as you keep the settings the same, it does nothing to OTA. You will see the error if you change flash speed/size.

TD-er

TD-er commented on Dec 12, 2022

@TD-er
Contributor

So no issues with checksums?

me-no-dev

me-no-dev commented on Dec 12, 2022

@me-no-dev
Member

no issues with checksums. elf2bin is done based on flash/psram settings, not based on the firmware image.

added a commit that references this issue on Dec 12, 2022
3af0b44
Jason2866

Jason2866 commented on Dec 12, 2022

@Jason2866
CollaboratorAuthor

Thx! Tested and working.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Platformio broken with actual master · Issue #7572 · espressif/arduino-esp32