IDE Running under 64 Bit Windows Produces Bad Binary File

Hi All,

I'm having a problem doing OTA uploads using 64 bit Windows but not 32 bit Windows.

The sketch is BasicOTA.ino with some LED blinking.

The binary file produced under 32 bit Windows works fine and can
be OTA uploaded to a NodeMCU time and time again.

The binary file produced under 64 bit Windows is larger then the "32 bit" file and
while I can upload it via USB, the OTA code must be corrupted because if I try an OTA upload
the NodeMCU crashes and I have to reload the code via the USB port.

I have the following hardware:

  • laptop running windows 7 32 bit

  • desktop running windows 7 64 bit

  • laptop running windows 10 64 bit

  • NodeMCU with Termite connected to the serial Comm port to capture Serial.printf msgs.

  • All machines were running Arduino IDE 1.8.5
    I updated the desktop running Windows 7 64 bit to 1.8.12 but the problem persists.

  • both 64 bit machines produce bad binaries

Termite capture of GOOD upload

........
Progress: 98%
Progress: 99%
Progress: 99%
Progress: 100%
End

ets Jan 8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 1392, room 16
tail 0
chksum 0xd0
csum 0xd0
v3d128e5c
@cp:0
ld
Booting
Ready
IP address: 192.168.1.114

Termite capture of BAD upload

........
Progress: 98%
Progress: 99%
Progress: 99%
Progress: 100%
End

ets Jan 8 2013,rst cause:2, boot mode:(3,7)

load 0x4010f000, len 3656, room 16
tail 8
chksum 0x0c
csum 0x0c
v9c56ed1f
@cp:0
ld
e:
ets Jan 8 2013,rst cause:3, boot mode:(3,7)

ets_main.c


Any help/advice will be greatly appreciated,

Thanks in advance.

By "NodeMCU", do you mean ESP8266? I ask because there are also ESP32-based boards that use the NodeMCU name.

Different versions of the platform's tools dependencies may be installed depending on whether you're using a 32 or 64 bit operating system. This might be the cause of the different behavior you're seeing.

Yes, it is a Geekcreit® NodeMcu Lua ESP8266 ESP-12F WIFI Development Board.

If I find the solution I'll post it here.

do you use EspAsyncWebServer?

Well I think I found it !!

The Arduino IDE installer under 32 bit Windows installed ESP8266 Version 2.6.3.

The Arduino IDE installer under 64 bit Windows installed ESP8266 Version 2.7.0.

Reverting back to version 2.6.3 on the 64 bit systems appears to have fixed my issue.

Juraj - No, I've never used EspAsyncWebServer. Good luck with your issues.