From 4fa9a2a110fea0c25e14484182be867d8c7cc34e Mon Sep 17 00:00:00 2001 From: Robert Lucian Chiriac Date: Fri, 28 Jun 2019 12:01:50 +0300 Subject: [PATCH] changes at the documentation level and taking the mpy firmware public @1.0.0 (#7) * use direct values instead of variables for gigglebot module * fix conflict induced by having the same address on the I2C line * simplify the gigglebot_advanced module and rename it to gb_diag * add read functions to each add-on sensor in the gigglebot module * add little comment in the distance sensor's constructor * correct version name in the changelog's title * just a simple change (#5) * Small change * Update changelog.yaml * fix - documentation (reorganization, fw vs runtime, badges) (#6) * update badge icons for build and docs status * mention what modules have been dropped out of the mpy firmware * add note about the existence of a different term apparently synonymous to the firmware * change where the API is placed in the documentation * update the changelog * make small changes to the documentation * putting emphasis on 2 paragraphs & changing the wording on an expression --- .gitignore | 2 ++ README.md | 2 +- changelog.yaml | 9 ++++++++- docs/source/firmware.rst | 8 +++----- docs/source/index.rst | 4 ++-- docs/source/quickstart.rst | 17 +++++++++++++++++ 6 files changed, 33 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index 72ab52e..f2a3e75 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ docs/build .vscode/ *.pyc docs/source/branch + +docs/source/_build/html/ diff --git a/README.md b/README.md index b29ab0a..195464d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ## GiggleBot MicroPython for the BBC Micro:bit -[![Build Status](https://travis-ci.org/RobertLucian/micropython-gigglebot.svg?branch=master)](https://travis-ci.org/RobertLucian/micropython-gigglebot) [![Documentation Status](https://readthedocs.org/projects/gigglebot-dev/badge/?version=develop)](https://gigglebot-dev.readthedocs.io/en/develop/?badge=develop) +[![Build Status](https://travis-ci.org/DexterInd/micropython-gigglebot.svg?branch=master)](https://travis-ci.org/DexterInd/micropython-gigglebot) [![Documentation Status](https://readthedocs.org/projects/gigglebot/badge/?version=stable)](https://gigglebot.readthedocs.io/en/stable/?badge=stable) This is the repository for the MicroPython that's running on the BBC micro:bit + GiggleBot robot. diff --git a/changelog.yaml b/changelog.yaml index 94e774e..a8d40a5 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -1,3 +1,10 @@ +v1.0.0: + title: GiggleBot MicroPython Firmware v1.0.0 + body: + - Update build/docs badges on the project's README. + - Mention the removal of the compass and SPI libraries. + - Clarify the difference between the MicroPython and DAPLink firmwares. + - Reorganize the documentation a little bit. v0.4.0: title: GiggleBot MicroPython Firmware v0.4.0 body: @@ -48,4 +55,4 @@ v0.1.0: - Reduced the number of recursions to a minimum with the distance sensor library and made it not use much RAM memory when imported. - Added the gigglebot library to this release. - - Added build server (with Travis-CI) and automated the release of new versions. \ No newline at end of file + - Added build server (with Travis-CI) and automated the release of new versions. diff --git a/docs/source/firmware.rst b/docs/source/firmware.rst index f772b7e..3815ec4 100644 --- a/docs/source/firmware.rst +++ b/docs/source/firmware.rst @@ -31,11 +31,9 @@ Firmware This customized firmware that includes the modules listed in this documentation also includes a handful of features meant to make use of the available RAM on the BBC micro:bit in a more efficient manner. +The downside to this, is that we had to **remove the built-in support for the micro:bit's compass and the SPI libraries**, which are least likely to be needed. -The vanilla firmware that comes with the `Mu Editor`_ is not really a good choice to use with external libraries because you cannot load precompiled -modules and then just import them. And loading most of the bigger libraries on the microbit doesn't work either, because the board has such limited RAM resources. - -So we have come up with a custom firmware that allows the import of precompiled python modules (to byte-code aka ``.mpy`` files). These ``.mpy`` modules can be treated +The default micropython firmware that comes with the Mu Editor fills the needs of a single microbit but does not offer enough power to easily drive extra hardware like the GiggleBot. So we have come up with a custom firmware that allows the import of precompiled python modules (to byte-code aka ``.mpy`` files). These ``.mpy`` modules can be treated like regular ``.py`` modules and copied in exactly the same manner over your microbit's filesystem, but they cannot be opened and edited in any way; it's not like it's necessary anyway. This has the advantage of skipping the precompiling phase on the microbit that could leave it without RAM resources during or after this process. @@ -90,4 +88,4 @@ To download, flash and play with the firmware, follow the :ref:`Getting Started .. _temperature humidity pressure sensor: https://www.dexterindustries.com/shop/temperature-humidity-pressure-sensor/ .. _light and color sensor: https://www.dexterindustries.com/shop/light-color-sensor/ .. _mu editor: https://codewith.mu/en/ -.. _bbc microbit: https://microbit.org/ \ No newline at end of file +.. _bbc microbit: https://microbit.org/ diff --git a/docs/source/index.rst b/docs/source/index.rst index ad79c81..a5bf56e 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -26,12 +26,12 @@ For an introduction to MicroPython on the Micro:Bit, see the `official tutorial quickstart firmware + code + control-tutorial sensors-tutorial addon-sensors-tutorial - code - Indices and tables diff --git a/docs/source/quickstart.rst b/docs/source/quickstart.rst index 2d7fb67..f2793d7 100644 --- a/docs/source/quickstart.rst +++ b/docs/source/quickstart.rst @@ -26,6 +26,23 @@ At the end of these short instructions, you will be able to run the following sn sleep(250) # wait 250 msec pixels_off() # turn off the GiggleBot eyes sleep(250) # wait 250 msec + + +.. note:: + + There are 2 MCUs (short for *Microcontroller Unit*) sitting on the BBC micro:bit: + + * One MCU has the role of flashing the HEX file that gets copied over to the other MCU. + * And the second MCU houses the actual scripts and MicroPython runtime (technically known as firmware) that you interact with (in the real world or at the terminal). + + In the micropython ecosystem, people refer to it as *firmware*. In the micro:bit ecosystem, it is referred to as *micropython runtime* to differentiate it from the microbit firmware, also known as the DAL firmware. + Here are some examples: + + * `Exhibit A `_ from BBC micro:bit MicroPython docs. + * `Exhibit B `_ from BBC micro:bit MicroPython docs. + + So in our documentation, **when we talk about the firmware, we are referring to the MicroPython firmware. And when we want to refer to the other MCU's firmware, + we just call it the DAPLink firmware**. Simple, right? ************************