Skip to content

board generator documentation #4989

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

Merged
merged 13 commits into from
Aug 1, 2018
Merged

board generator documentation #4989

merged 13 commits into from
Aug 1, 2018

Conversation

d-a-v
Copy link
Collaborator

@d-a-v d-a-v commented Jul 31, 2018

Changes can be seen there.

Copy link
Collaborator

@earlephilhower earlephilhower left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Documentation looks good!

@@ -286,6 +286,9 @@ Memory, memory, memory
modification. For example, std::vector is available for use. The standard implementations
rely on exceptions for error handling, which is not available for the ESP, and in any
case there is no access to the underlying code.

Instrumenting the code with the OOM debug option and calls to ``ESP.getFreeHeap()`` will
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add a line about the last memory allocation failure report in the panic that was added a while back?


The board generator is a python script originally intended to ease the
Arduino IDE's `boards.txt` configuration file about the multitude of
available board, especially when common data have to be updated for all of
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

available boards

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

common data -> common parameters

How can I run the script ?
~~~~~~~~~~~~~~~~~~~~~~~~~~

Python 2 needs to be installed on your system.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does it work with Python 3?

Copy link
Collaborator Author

@d-a-v d-a-v Jul 31, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does it work with Python 3?

No. At least all prints must be updated.

edit: that could be an issue for 2.5.0: all python scripts must be py2/3 agnostic.


* increase available flash space by disabling floats in ``*printf`` functions

* enable WPS which is now disabled by default (at the cost of a smaller heap by ~4KB)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in the IDE?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all of these are in the IDE, right?

Copy link
Collaborator Author

@d-a-v d-a-v Jul 31, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

float/printf and WPS are not in IDE. The board generator script is currently the only way to change these.

edit: I may have misunderstood. The generator does make changes for usability within the IDE. Some of the changes are not doable from inside the IDE. The generator does them. Then the IDE must be restarted to take effect.
The IDE could do them, but we don't want to flood all users, especially beginners, with thousands of options (arduino, KISS). We already have lots of them. Eclipsification of esp8266/Arduino's IDE shall not happen.

When do I need to mess with it ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The board generator is used to automate configuration files generation when it is
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

automate generation of configuration files

The board generator is used to automate configuration files generation when it is
possible to. It needs to be edited for:

* All the specific board informations. This is the only place where a new
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All information for specific boards


The board generator is a python script originally intended to ease the
Arduino IDE's `boards.txt` configuration file about the multitude of
available board, especially when common data have to be updated for all of
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

available boards

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

common data -> common parameters

available board, especially when common data have to be updated for all of
them.

This script is also used to manage uncommon options that will not find their
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that are currently not available in the IDE menu (we can't say for sure that they will never ever be in the IDE :p)

@devyte devyte added this to the 2.4.2 milestone Jul 31, 2018
@devyte devyte merged commit 3ab38d6 into esp8266:master Aug 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants