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

Add ARM builds to the boards manager package #269

Closed
majenkotech opened this issue May 18, 2015 · 26 comments
Closed

Add ARM builds to the boards manager package #269

majenkotech opened this issue May 18, 2015 · 26 comments

Comments

@majenkotech
Copy link
Contributor

I have compiled a Linux 32-bit toolchain (since I couldn't find it in the build.xml, nor guess the URL).

Download: http://cdn.majenko.co.uk/esp/xtensa-lx106-elf-linux32.tgz

ARMhf version is compiling at the moment. I'll provide a link for that too when it's done and packaged.

Linux 32-bit esptool is up as well: http://cdn.majenko.co.uk/esp/esptool-0.4.4-linux32.zip
And so is the ARMhf version: http://cdn.majenko.co.uk/esp/esptool-0.4.4-linux-armhf.zip

@igrr
Copy link
Member

igrr commented May 19, 2015

Huge thanks for the toolchain! Did you build it using crosstool-NG? If so, which git revision was it?

@igrr
Copy link
Member

igrr commented May 19, 2015

Also, why is esptool in a zip archive? I thought I changed make dist to generate .tar.gz archive for Linux and Mac OS...

@igrr
Copy link
Member

igrr commented May 19, 2015

I have added the 32-bit tools to the board manager package.

@majenkotech
Copy link
Contributor Author

Yes, crosstool-NG from https://github.com/jcmvbkbc/crosstool-NG - the HEAD of the lx106-g++ branch

I manually packaged esptool as .zip because the 0.4.3 version is packaged as .zip, and my UECIDE package build scripts expect it to be .zip. I can do a .tgz for you as well if you prefer.

By the way, the ARM compiler is nearly done - 871 minutes compiling so far and it's on cross-gdb.

@majenkotech
Copy link
Contributor Author

Actually, "make dist" makes a zip file. The repo I am using is https://github.com/igrr/esptool-ck

@igrr
Copy link
Member

igrr commented May 19, 2015

Actually it should be tar.gz (I made that change yesterday):
igrr/esptool-ck@d564b01

I switched to tar.gz because Arduino Boards Manager didn't preserve permissions for executable files inside .zip files, switching to tar.gz did the trick.

Regarding ARM — do you know if there is a version of Arduino for ARM?

@majenkotech
Copy link
Contributor Author

Ah - my linux32 repo pre-dated that change (pulled, and built now - http://cdn.majenko.co.uk/esp/esptool-0.4.4-linux32.tar.gz ). My ARM copy of the repo was new enough, but it can't identify that it's linux, so it builds it as a .zip.

matt@armadillian:~/esptool-ck$ uname -a
Linux armadillian 3.18.11+ #15 PREEMPT Sun May 3 17:18:11 BST 2015 armv6l GNU/Linux
matt@armadillian:~/esptool-ck$ uname -p
unknown 
matt@armadillian:~/esptool-ck$ uname -m
armv6l

I'll manually package it for now.

And yes, Arduino is available for ARM. Only seems to be 1.0.5 in the default repository though, but no reason why you can't use any other Linux download of Arduino - it's Java after all.

@igrr
Copy link
Member

igrr commented May 19, 2015

does uname -s tell that it's Linux?

@majenkotech
Copy link
Contributor Author

Better still, there's a fix for ARM. Also a package: http://cdn.majenko.co.uk/esp/esptool-0.4.4-linux-armhf.tar.gz

@majenkotech
Copy link
Contributor Author

By the way - uname -m is probably the better way of detecting what the architecture is:

Linuxx 64 = x86_64
Linux 32 = i686
Linux ARM = armv6l

@igrr
Copy link
Member

igrr commented May 19, 2015

If you can change the makefile to use uname -m and test on 86 and ARM, then please do add this to your pull request.

@majenkotech
Copy link
Contributor Author

Works nicely - just built packages on all three platforms as Linux in tar.gz

@majenkotech
Copy link
Contributor Author

@igrr
Copy link
Member

igrr commented May 19, 2015

$ wget http://cdn.majenko.co.uk/esp/xtensa-lx106-elf-linux-arm.tgz
--2015-05-19 14:43:59--  http://cdn.majenko.co.uk/esp/xtensa-lx106-elf-linux-arm.tgz
Resolving cdn.majenko.co.uk (cdn.majenko.co.uk)... 31.193.139.41, 31.193.139.48
Connecting to cdn.majenko.co.uk (cdn.majenko.co.uk)|31.193.139.41|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-05-19 14:43:59 ERROR 404: Not Found.

@majenkotech
Copy link
Contributor Author

Press F5 and use the real URL ;) You grabbed that in the 3 seconds it was wrong.

@ghost
Copy link

ghost commented May 22, 2015

cudos!!! Now I can run this on all kinds of PIs :)

@majenkotech
Copy link
Contributor Author

It's fully supported by UECIDE on the Pi now.

@igrr
Copy link
Member

igrr commented May 29, 2015

@majenkotech Could you please build the new esptool version for linux x86?

@danbicks
Copy link

Hi igrr,

I know it is slightly of topic, pretty please can you update the build so it uses the latest SDK 1.1.0 really would be fantastic if we could use the rf power feature to save some battery life.
Amazing work you guys are doing.

Thanks Dans

@igrr
Copy link
Member

igrr commented May 30, 2015

The version based on 1.1 is not very stable yet, but if you wish to try it
there is a staging package which gets updated more frequently:
http://arduino.esp8266.com/staging/package_esp8266com_index.json
On May 30, 2015 15:21, "danbicks" notifications@github.com wrote:

Hi igrr,

I know it is slightly of topic, pretty please can you update the build so
it uses the latest SDK 1.1.0 really would be fantastic if we could use the
rf power feature to save some battery life.
Amazing work you guys are doing.

Thanks Dans


Reply to this email directly or view it on GitHub
#269 (comment).

@danbicks
Copy link

Thanks Igrr,

I will give this a try and let you know.

Thanks buddy Dans

On Sat, May 30, 2015 at 1:28 PM, Ivan Grokhotkov notifications@github.com
wrote:

The version based on 1.1 is not very stable yet, but if you wish to try it
there is a staging package which gets updated more frequently:
http://arduino.esp8266.com/staging/package_esp8266com_index.json
On May 30, 2015 15:21, "danbicks" notifications@github.com wrote:

Hi igrr,

I know it is slightly of topic, pretty please can you update the build so
it uses the latest SDK 1.1.0 really would be fantastic if we could use
the
rf power feature to save some battery life.
Amazing work you guys are doing.

Thanks Dans


Reply to this email directly or view it on GitHub
#269 (comment).


Reply to this email directly or view it on GitHub
#269 (comment).

@danbicks
Copy link

Igrr,

Thanks buddy I have downloaded the staging version and the sketch with the latest version is now 67% FROM 46% but does recognize the rf power API call : system_phy_set_max_tpw(VarPWR)
The sketch remains the same quite a big difference in code usage using the staging variant, will this come down in the final build?

Also and I know slightly of subject for this forum but in the later release is there any chance of separating web pages html from the actual code files. You may have a method already in mind for this. A lot of is on the forum would really like this as an option if possible.

I have lots of modules here in my lab, mainly ESP01 and ESP12 I have the E version of the 12 on its way so would be more than happy to be a human Ginny pig for you guys :)

Cheers again

Dans

@igrr
Copy link
Member

igrr commented Feb 29, 2016

@majenkotech how did you go about building ARM versions of the tools? I sorted out linux32 versions by running a 32-bit linux system with Vagrant and virtualbox, but not sure how to go about building the same for ARM. Could you please give me a hint?

@igrr igrr changed the title Linux 32-bit and ARM Add ARM builds to the boards manager package Feb 29, 2016
@igrr igrr self-assigned this Feb 29, 2016
@majenkotech
Copy link
Contributor Author

IIRC I may have done it on an arm system.

@igrr igrr added the 1 - Ready label Mar 1, 2016
@igrr igrr added this to the 2.2.0 milestone Mar 1, 2016
igrr added a commit that referenced this issue Apr 14, 2016
@igrr
Copy link
Member

igrr commented Apr 14, 2016

ARM tools are now available in git version (via tools/get.py).

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

No branches or pull requests

3 participants