Go Down

Topic: Simple cross-compiling using the Arduino IDE for an ESP8266 to run on ARM (Read 702 times) previous topic - next topic

RIN67630

Hi experts here,
I know, that we have got better IDE environment than Arduino.
I love it and I love its simplicity.

I also know, that the Arduino IDE can only compile for an ESP8266 on an Intel processor.

I would like to do the following: Compiling the sketch on a notebook platform, then copy the compiled result to the remote ARM target  (using VNC) and upload the file there using AVR-Dude.

I would of course also have an ESP8266 on the notebook for a local debugging.

I suppose the file to upolad is the xxxx.ino.nodemcu.bin, right?
So I will transfer it to the remote operating system using VNC.

But then I would need some kind of guidance: how could I upload that file on the remote ESP system?
Ideally I would love to be able to do that from the remote Arduino IDE, but I do not find any menu option to do that.

I suppose, I will have to fiddle with AVR-dude on the command line.
but my actual AVR-dude is already tweaked by Autoreset to generate the reset signals before the upload process.


I am sorry to bother, if that already has been described elsewhere, I just couldn't find it.
Could you give me a hint where to find it?

Juraj

- Arduino IDE can't compile. it uses external toolchains. many are supported. you forgot to mention the 'default' AVR.
- esp8266 is not ARM.
- avrdude is used to upload to AVR MCUs (and M0, but that is an exception).
- esptool is used to USB upload to esp8266
- esp8266 can update itself, by receiving the binary over the network. see ArduinoOTA, ESP8266HTTPUpdateServer or ESP8266httpUpdate library

RIN67630

- Arduino IDE can't compile. it uses external toolchains. many are supported. you forgot to mention the 'default' AVR.
- esp8266 is not ARM.
- avrdude is used to upload to AVR MCUs (and M0, but that is an exception).
- esptool is used to USB upload to esp8266
- esp8266 can update itself, by receiving the binary over the network. see ArduinoOTA, ESP8266HTTPUpdateServer or ESP8266httpUpdate library
IMHO there is no compiler for ESP8266 on ARM, is one?
OK it's ESPtool, that will be an issue since i have -yet- no reset routine.
I am not fond of OTA, for security reasons and because i'm already using 439352 bytes (42%) of program storage space, OTS will need twice that program size.
I would prefer uploading using the remote serial resources.


Juraj

IMHO there is no compiler for ESP8266 on ARM, is one?
OK it's ESPtool, that will be an issue since i have -yet- no reset routine.
I am not fond of OTA, for security reasons and because i'm already using 439352 bytes (42%) of program storage space, OTS will need twice that program size.
I would prefer uploading using the remote serial resources.


what is what you call esp8266 on ARM? esp8266 is Tensilica xtensa architecture, not ARM
the OTA is space is not count to "program space". the largest binary for esp8266 is 1 MB. most newer modules have 4 MB flash. OTA updates have options for secure upload

EDIT: you want to have the remote esp8266 on Raspberry PI only to update the esp8266? if you have a PI there, you don't need the esp.




RIN67630

what is what you call esp8266 on ARM? esp8266 is Tensilica xtensa architecture, not ARM
I meant that I can't compile for an ESP on the PI, which is ARM. So I have to compile on an Intel/AMD system.

[/quote]
the OTA is space is not count to "program space". the largest binary for esp8266 is 1 MB. most newer modules have 4 MB flash. OTA updates have options for secure upload

EDIT: you want to have the remote esp8266 on Raspberry PI only to update the esp8266? if you have a PI there, you don't need the esp.
[/quote]

No, I need both ESP and Pi connected together through Serial.
Originally I have an Arduino Pro and Pi connected together through Serial, but I wanted an ESP based variant as well.

david_2018

I meant that I can't compile for an ESP on the PI, which is ARM. So I have to compile on an Intel/AMD system.

I don't quite understand, I just compiled and uploaded a couple of the examples sketches to a clone D1 Mini on a Raspberry Pi 3 B+ using the latest version of the Arduino IDE.

westfw

Perhaps you have an obsolete version of the IDE installed by a RPi Package Manager, rather than the version you should download directly from Arduino.cc (and then use the "board manager" to install the ESP8266 support...)

RIN67630

Perhaps you have an obsolete version of the IDE installed by a RPi Package Manager, rather than the version you should download directly from Arduino.cc (and then use the "board manager" to install the ESP8266 support...)

Ups! I may have got an obsolete information that espressif never provided an ARM version of their compiler.
I believed it.
I will try tomorrow.

Go Up