circuitpython/docs
Damien George e0905e85a7 esp8266: Change from FAT to littlefs v2 as default filesystem.
This commit changes the esp8266 boards to use littlefs v2 as the
filesystem, rather than FAT.  Since the esp8266 doesn't expose the
filesystem to the PC over USB there's no strong reason to keep it as FAT.
Littlefs is smaller in code size, is more efficient in use of flash to
store data, is resilient over power failure, and using it saves about 4k of
heap RAM, which can now be used for other things.

This is a backwards incompatible change because all existing esp8266 boards
will need to update their filesystem after installing new firmware (eg
backup old files, install firmware, restore files to new filesystem).

As part of this commit the memory layout of the default board (GENERIC) has
changed.  It now allocates all 1M of memory-mapped flash to the firmware,
so the filesystem area starts at the 2M point.  This is done to allow more
frozen bytecode to be stored in the 1M of memory-mapped flash.  This
requires an esp8266 module with 2M or more of flash to work, so a new board
called GENERIC_1M is added which has the old memory-mapping (but still
changed to use littlefs for the filesystem).

In summary there are now 3 esp8266 board definitions:
- GENERIC_512K: for 512k modules, doesn't have a filesystem.
- GENERIC_1M: for 1M modules, 572k for firmware+frozen code, 396k for
  filesystem (littlefs).
- GENERIC: for 2M (or greater) modules, 968k for firmware+frozen code,
  1M+ for filesystem (littlefs), FAT driver also included in firmware for
  use on, eg, external SD cards.
2020-04-04 16:30:36 +11:00
..
develop docs/develop: Detail how to add symbols to mp_fun_table for native mods. 2020-02-16 00:04:25 +11:00
differences docs/differences: Clarify the differences are against Python 3.4. 2019-01-11 12:11:02 +11:00
esp32 esp32/modnetwork: Add max_clients kw-arg to WLAN.config for AP setting. 2020-01-22 16:43:25 +11:00
esp8266 docs/esp8266: In TCP tutorial, add HTTP response code and content-type. 2020-02-03 23:50:09 +11:00
library docs,tests: Add docs and test for uasyncio custom exc handler methods. 2020-04-04 10:47:48 +11:00
pyboard docs: More consistent capitalization and use of articles in headings. 2020-01-06 22:17:29 +11:00
readthedocs/settings docs: Add RTD local_settings file, to add custom templates. 2014-12-21 11:21:06 +00:00
reference esp8266: Change from FAT to littlefs v2 as default filesystem. 2020-04-04 16:30:36 +11:00
static docs: Add M-logo as favicon. 2017-02-07 20:04:40 +11:00
templates docs/templates/topindex.html: Replace usage of deprecated defindex.html. 2019-11-07 14:45:55 +11:00
unix windows: Improve default search path. 2020-02-11 13:34:35 +11:00
wipy docs: Remove spaces on lines that are empty. 2019-12-04 15:02:54 +11:00
conf.py all: Bump version to 1.12. 2019-12-20 16:58:17 +11:00
index.rst docs/unix: Add a new new quickref page for the UNIX port. 2020-02-04 17:53:06 +11:00
license.rst docs/license: Update copyright year. 2017-06-23 21:48:27 +03:00
make.bat Add .gitattributes file to force text line endings to LF. 2015-04-16 22:23:56 +01:00
Makefile docs/Makefile: define and use PYTHON as the interpreter for CPYDIFF 2017-02-27 15:39:55 +11:00
README.md docs/README: Add short paragraph about using readthedocs. 2020-01-12 11:45:55 +11:00

MicroPython Documentation

The MicroPython documentation can be found at: http://docs.micropython.org/en/latest/

The documentation you see there is generated from the files in the docs tree: https://github.com/micropython/micropython/tree/master/docs

Building the documentation locally

If you're making changes to the documentation, you may want to build the documentation locally so that you can preview your changes.

Install Sphinx, and optionally (for the RTD-styling), sphinx_rtd_theme, preferably in a virtualenv:

 pip install sphinx
 pip install sphinx_rtd_theme

In micropython/docs, build the docs:

make html

You'll find the index page at micropython/docs/build/html/index.html.

Having readthedocs.org build the documentation

If you would like to have docs for forks/branches hosted on GitHub, GitLab or BitBucket an alternative to building the docs locally is to sign up for a free https://readthedocs.org account. The rough steps to follow are:

  1. sign-up for an account, unless you already have one
  2. in your account settings: add GitHub as a connected service (assuming you have forked this repo on github)
  3. in your account projects: import your forked/cloned micropython repository into readthedocs
  4. in the project's versions: add the branches you are developing on or for which you'd like readthedocs to auto-generate docs whenever you push a change

PDF manual generation

This can be achieved with:

make latexpdf

but require rather complete install of LaTeX with various extensions. On Debian/Ubuntu, try (500MB+ download):

apt-get install texlive-latex-recommended texlive-latex-extra