Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some ESP32 idf issues #2514

Open
Asanga-Viraj opened this issue May 24, 2022 · 3 comments
Open

Some ESP32 idf issues #2514

Asanga-Viraj opened this issue May 24, 2022 · 3 comments

Comments

@Asanga-Viraj
Copy link

@mikee47
I am working on ESP32 using Sming framework. I saw few things (Win 10).

  • Sming choco install -y sming.esp32 doesn't install idf-v4.3 from your repository. It installs idf-v4.1.
  • Sming re-installation doesn't clean and reinstall ESP32 components.
  • Saw many issues with current version such as System.restart, WiFi.Disconnect, etc.

Also just a suggestion, it is better if you can make Sming support with latest release idf (like idf-v4.4.1).

Thanks

@Asanga-Viraj
Copy link
Author

@slaff
I found a issues in ESP32. WifiStation.connect() is not working. I found esp_wifi_connect() is not calling on this method. My suggestions are below.

Thanks

@Asanga-Viraj Asanga-Viraj changed the title Some idf issues Some ESP32 idf issues May 26, 2022
@slaff
Copy link
Contributor

slaff commented Jun 1, 2022

@Asanga-Viraj thank you for your remarks.

Sming choco install -y sming.esp32 doesn't install idf-v4.3 from your repository. It installs idf-v4.1.

This should be fixes today with this commit.

Sming re-installation doesn't clean and reinstall ESP32 components.

sming.esp32 should be the only package responsible for this.

it is better if you can make Sming support with latest release idf (like idf-v4.4.1).

We usually skip a minor version and jump to the next one. But if you have the time and desire you are free to submit a PR with the needed changes.

@kmihaylov
Copy link
Contributor

kmihaylov commented Aug 19, 2022

@Asanga-Viraj do you have some progress on System.restart() ?

On my ESP8266 board I have to disconnect from the wifi network before calling System.restart() in order not to trigger (some) WD timer. I have to try wifi-less app with Esp32 to verify this.


Edit: #2500

slaff pushed a commit that referenced this issue Jul 14, 2024
The Windows installer makes use of custom chocolatey packages, which are out of date. See issue #2514.
These packages are separate from the main Sming repository and represent an un-necessary maintenance overhead.

This PR updates the installation scripts so these custom chocolatey packages are no longer required.
The scripts were previously only used for CI testing so have been reworked appropriately.
The installation procedure is now similar to that for linux/MacOS.

The initial bootstrap installation remains unchanged: The ``choco-install.cmd`` script is fetched from the Sming ``develop`` branch and executed.

Note: Contrary to other installs and the documentation, the current sming choco script installs the `master` branch.

The user runs a second install script `tools\install` to install required toolchains.
This is separate because:

- Administrative priviledges are not required
- The user gets more control over which toolchains get installed
- The script doesn't change anything outside of the `C:\tools` directory (other than python packages)

The directory can also be customised by setting `SMING_TOOLS_DIR`.

The documentation at https://sming.readthedocs.io/en/latest/getting-started/windows/index.html has been updated to reflect these changes.


**CI Compiler Cache**

I've moved caching to just before the build starts, so that configuration and zeroing ccache is handled by the build script. This is more logical than doing it as part of the install phase.


**Esp32 install/build**

A standard IDF tools installation includes the following packages:

- cmake
- ninja
- ccache

As Sming installs these system-wide, these are not required.
Also, as we now have Ninja in the system path for all platforms some logic in build.mk can be removed.

These additional items are not used:

- idf-exe
- dfu-util

The Sming Esp32 installer omits all the above items, for linux/MacOS also.
Turns out we can just pass the filter `"*elf*"` to the installer to get all the stuff we **do** actually need.


**Python**

This defaulted to `python3`, which failed in testing as current installers don't provide it, so change to `python`.

The `PYTHON` variable now defaults to the full path determined by `which python`. In Windows, the makefile resolves this to something like `/c/Python312/python.exe`.


**MinGW**

I've also added `MinGW-2021-04-12.7z` to the [SmingTools](https://github.com/SmingHub/SmingTools/releases).
This differs from `MinGW-2020-10-19.7z` which was previously used (in both choco package and CI install) in the following ways:

- MinGW version changed from 5.4.1 to 5.4.2
- Files unpack into `./` instead of `MinGw/` so makes it easier to relocate during installation if required
- Contents of `var/cache` removed to reduce size of archive (48MB vs 133MB)

No changes to GCC, still 9.2.0.


**Docs build**

Documentation build fails in Windows, problems with libcairo-2.dll.
Initially, the error was about not finding the DLL.
Some reserach suggests installing gtk+ runtime should fix this.
Still fails but with error "can't find .so".

Leaving this as a known issue, just build in Linux or WSL.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants