Skip to content

Commit 4fa9a2a

Browse files
authored
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
1 parent f09bcb2 commit 4fa9a2a

File tree

6 files changed

+33
-9
lines changed

6 files changed

+33
-9
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,5 @@ docs/build
33
.vscode/
44
*.pyc
55
docs/source/branch
6+
7+
docs/source/_build/html/

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
## GiggleBot MicroPython for the BBC Micro:bit
2-
[![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)
2+
[![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)
33

44
This is the repository for the MicroPython that's running on the BBC micro:bit + GiggleBot robot.
55

changelog.yaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
v1.0.0:
2+
title: GiggleBot MicroPython Firmware v1.0.0
3+
body:
4+
- Update build/docs badges on the project's README.
5+
- Mention the removal of the compass and SPI libraries.
6+
- Clarify the difference between the MicroPython and DAPLink firmwares.
7+
- Reorganize the documentation a little bit.
18
v0.4.0:
29
title: GiggleBot MicroPython Firmware v0.4.0
310
body:
@@ -48,4 +55,4 @@ v0.1.0:
4855
- Reduced the number of recursions to a minimum with the distance sensor library
4956
and made it not use much RAM memory when imported.
5057
- Added the gigglebot library to this release.
51-
- Added build server (with Travis-CI) and automated the release of new versions.
58+
- Added build server (with Travis-CI) and automated the release of new versions.

docs/source/firmware.rst

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,9 @@ Firmware
3131

3232
This customized firmware that includes the modules listed in this documentation also includes a handful of features meant to make use
3333
of the available RAM on the BBC micro:bit in a more efficient manner.
34+
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.
3435

35-
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
36-
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.
37-
38-
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
36+
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
3937
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.
4038
This has the advantage of skipping the precompiling phase on the microbit that could leave it without RAM resources during or after this process.
4139

@@ -90,4 +88,4 @@ To download, flash and play with the firmware, follow the :ref:`Getting Started
9088
.. _temperature humidity pressure sensor: https://www.dexterindustries.com/shop/temperature-humidity-pressure-sensor/
9189
.. _light and color sensor: https://www.dexterindustries.com/shop/light-color-sensor/
9290
.. _mu editor: https://codewith.mu/en/
93-
.. _bbc microbit: https://microbit.org/
91+
.. _bbc microbit: https://microbit.org/

docs/source/index.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@ For an introduction to MicroPython on the Micro:Bit, see the `official tutorial
2626
quickstart
2727
firmware
2828

29+
code
30+
2931
control-tutorial
3032
sensors-tutorial
3133
addon-sensors-tutorial
3234

33-
code
34-
3535

3636

3737
Indices and tables

docs/source/quickstart.rst

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,23 @@ At the end of these short instructions, you will be able to run the following sn
2626
sleep(250) # wait 250 msec
2727
pixels_off() # turn off the GiggleBot eyes
2828
sleep(250) # wait 250 msec
29+
30+
31+
.. note::
32+
33+
There are 2 MCUs (short for *Microcontroller Unit*) sitting on the BBC micro:bit:
34+
35+
* One MCU has the role of flashing the HEX file that gets copied over to the other MCU.
36+
* 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).
37+
38+
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.
39+
Here are some examples:
40+
41+
* `Exhibit A <https://microbit-micropython.readthedocs.io/en/v1.0.1/devguide/flashfirmware.html?highlight=firmware#>`_ from BBC micro:bit MicroPython docs.
42+
* `Exhibit B <https://microbit-micropython.readthedocs.io/en/v1.0.1/devguide/hexformat.html>`_ from BBC micro:bit MicroPython docs.
43+
44+
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,
45+
we just call it the DAPLink firmware**. Simple, right?
2946

3047

3148
************************

0 commit comments

Comments
 (0)