Skip to content

Esp8266 Ota Bad Path Sloeber v4.4 #1371

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

Closed
BriscoeTech opened this issue Aug 18, 2021 · 8 comments
Closed

Esp8266 Ota Bad Path Sloeber v4.4 #1371

BriscoeTech opened this issue Aug 18, 2021 · 8 comments
Labels

Comments

@BriscoeTech
Copy link

Hello Everyone,

I am currently running Sloeber 4.4 on windows and trying to programm an esp8266 via OTA. This project was created in v4.3 and ported into v4.4, and now OTA is no longer working. Same error occurs when using esp8266 core v2.6.3 or v3.0.2

here is the error I am getting in the console window when trying to upload the code via ota

image


Starting upload
Uploading project "Esp_MQTT_LightSensor" with "esptool"
no reset because we are using network upload

Launching: -I C:\Sloeber-v4.4\arduinoPlugin\packages\esp8266\hardware\esp8266\3.0.2/tools/espota.py -i Light-Sensor.local -p 8266 --auth=no_pwd_found_in_code -f C:\sloeber-workspace-esp\Esp_MQTT_LightSensor\Release/Esp_MQTT_LightSensor.bin
Output:
Cannot run program "" (in directory "C:\sloeber-workspace-esp"): CreateProcess error=87, The parameter is incorrect
failed to upload "L/Esp_MQTT_LightSensor/Esp_MQTT_LightSensor}/Release/Esp_MQTT_LightSensor.hex"


What is very strange is the failed to upload line, the path is completely wrong

L/Esp_MQTT_LightSensor/Esp_MQTT_LightSensor}

It appears something is not being interpreted correctly somewhere, because there is a unmatched }
Also Esp_MQTT_LightSensor/Esp_MQTT_LightSensor is not how my project is organized, and have no L directories or drives.

Here is a screenshot of the CreateProcess error
image

@jantje
Copy link
Member

jantje commented Aug 18, 2021

I can confirm the issue.
It is indeed a regression introduced in 4.4
It is a similar issue to #1364
To workaround edit the platform.txt in the tools.esptool.upload.network_pattern where it states network_cmd change that to tools.esptool.network_cmd
delete the platform.sloeber.txt
goto you project properties->arduino select apply and close
There may be other issues but I have no means of testing
So please test this workaround and feed back

@jantje jantje added domain: upload importance: board specific OS: all status: Arduino IDE incompatibility Somethig that is not exactly the same as the arduino ide status: workaround documented A workaround has been confirmed to solve this issue. domain: regression labels Aug 18, 2021
@BriscoeTech
Copy link
Author

Thanks for the quick reply :-)

That did the trick, it compiled and uploaded right away. I have not noticed any other problems. Ill keep an eye on these threads and am willing to test the next version that addresses these issues.

Here is a screenshot for the exact change I made if anyone has questions
image

@jantje
Copy link
Member

jantje commented Aug 19, 2021

Thanks for the feedback
I'm trying to setup something so I can do regression testing before I start changing the workaround code again.
Once I have this basis I can modify the workaround code with more confidence

jantje pushed a commit that referenced this issue Aug 19, 2021
For data I use a copy of arduinoPlugin (only the txtx files)
I won't check this is a	it is big and can be reproduced by sloeber
itself
jantje pushed a commit that referenced this issue Aug 21, 2021
jantje pushed a commit that referenced this issue Aug 21, 2021
Before 4.4 sloeber handled the expansion based on all environment
variables.
In 4.4 this was no longer possible as the variables are not known at the
time when the workaround is applied.
This caused issues
This solution expands based on the platform.txt content itself.
As this is not covering all cases some keywords are always expanded.
Also: some keywords are never expanded
jantje pushed a commit that referenced this issue Aug 21, 2021
This enforces the creation of new workaround files
@jantje
Copy link
Member

jantje commented Aug 21, 2021

This one should be fixed in the nightly after the next nightly build.

@jantje jantje added the Status: waiting for confirmation fix works The nightly contains a fix but the fix has not yet been confirmed to work. label Aug 21, 2021
@jantje jantje added status: fixed in 4.4.1 and removed Status: waiting for confirmation fix works The nightly contains a fix but the fix has not yet been confirmed to work. labels Sep 10, 2021
@jantje jantje closed this as completed Sep 10, 2021
@mduchain
Copy link

mduchain commented Dec 26, 2021

I just had the same issue on NodeMcu-32S (espressif esp32 board) with Sloeber v4.4.0 win64 2021-07-04-48-31.
Work-around fixed the issue.
One of the labels of the issue states "board specific"; does this mean you prefer I open a specific issue against the ESP32 or this comment is sufficient even if the issue is closed?

@jantje
Copy link
Member

jantje commented Dec 26, 2021

Board specific means not all boards have this issue.
So no need to create another issue.

@ianr34
Copy link

ianr34 commented Jan 18, 2022

I had this issue (all the ones that link back to this number - ie esp32 won't upload as arguments aren't there) with 4.4, so downloaded the latest nightly and it was still there. Though the edit ("tools.esptool_py.upload.pattern="{path}/{cmd}" {tools.esptool_py.upload.pattern_args}" DID fix it.

It might be worth getting this fix up asap, or semi technical people will try it once for the esp32, it will fail to upload, and they will give up..

@jantje
Copy link
Member

jantje commented Jan 18, 2022

@ianr34
Are you now saying it is fixed in the nightly or not.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants