Skip to content

Commit e7edbe5

Browse files
committed
Update latest-revision-editors.md
1 parent 351fe48 commit e7edbe5

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

latest-revision/latest-revision-editors.md

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ lang: en
1515

1616
Thanks for your continuing support of the micro:bit. There is a wonderful breadth of [third party editors](https://microbit.org/code/#other-editors) available for the micro:bit that support different coding languages and learning scenarios. This article provides information to help you continue to support the 5 million existing micro:bits in the world and the latest board revision with the exciting new features of a speaker and microphone.
1717

18-
If youd like to keep up to date with technical information about the device, please sign up to our [DAL, Devices and Editors mailing list](http://eepurl.com/dyRx-v) which provides information on hardware revisions, or key low-level software changes as early as possible.
18+
If you'd like to keep up to date with technical information about the device, please sign up to our [DAL, Devices and Editors mailing list](http://eepurl.com/dyRx-v) which provides information on hardware revisions, or key low-level software changes as early as possible.
1919

2020
----------
2121

22-
Please note that we do as much development as possible in the open, so if youd like to be part of these processes you can join the relevant projects on GitHub:
22+
Please note that we do as much development as possible in the open, so if you'd like to be part of these processes you can join the relevant projects on GitHub:
2323

2424

2525
- [Micro:bit Educational Foundation on GitHub](https://github.com/microbit-foundation)
@@ -29,10 +29,10 @@ Please note that we do as much development as possible in the open, so if you’
2929
- [MicroPython](https://github.com/bbcmicrobit/micropython)
3030
- [MakeCode](https://github.com/Microsoft/pxt) for micro:bit [(pxt-microbit)](https://github.com/Microsoft/pxt-microbit)
3131

32-
Your tools are some of the most direct ways that users experience the micro:bit. Weve done all we can to try and minimise the amount of work you will need to do in order to seamlessly support the new revision of the micro:bit and the old version in a single program.
32+
Your tools are some of the most direct ways that users experience the micro:bit. We've done all we can to try and minimise the amount of work you will need to do in order to seamlessly support the new revision of the micro:bit and the old version in a single program.
3333

3434

35-
## If youre using the microbit DAL/Runtime
35+
## If you're using the micro:bit DAL/Runtime
3636

3737
The most important change here is that the latest board revision runtime is based on [CODAL](https://lancaster-university.github.io/codal/)
3838
and no longer makes use of Arm Mbed.
@@ -46,21 +46,22 @@ and no longer makes use of Arm Mbed.
4646
Mbed does not support the nRF52833 by default, though The Foundation does intend to publish a platform to enable this. The micro:bit editors do not use Mbed by default.
4747

4848
### Building CODAL
49+
4950
The [instructions for building CODAL](https://github.com/microbit-foundation/codal/blob/master/mb-build-instructions.md) are located in the micro:bit CODAL repository. The final link is TBC and may change.
5051

5152

52-
## If youre using MicroPython
53+
## If you're using MicroPython
5354

5455
Based on the current work in CODAL we've also worked with Damien George, the author of MicroPython, to build the changes into an updated release of MicroPython for the micro:bit.
5556

56-
The exisiting API has not changed. Scripts that use features that are common to all revisions will not be affected.
57+
The existing API has not changed. Scripts that use features that are common to all revisions will not be affected.
5758

5859
To support all revisions of the micro:bit, you will need to ensure you use the latest release of the MicroPython binary with your editor. The simplest way to do this is to flash a program created in the latest Python Editor which will contain the latest MicroPython build.
5960

6061
[https://python.microbit.org/v/beta/](https://python.microbit.org/v/beta/)
6162

6263

63-
## If youre using the micro:bit profile over BLE
64+
## If you're using the micro:bit profile over BLE
6465

6566
The BLE Profile for the micro:bit has also been update to ensure compatibility with both revisions of the board. We have published a binary that enables all BLE services available to the board and shows the connection status on the LED.
6667

@@ -71,7 +72,7 @@ The MakeCode Bluetooth package will include all updates for the revised hardwar
7172

7273
## Identifying which micro:bits you can support
7374

74-
If you write an editor that doesnt have an online update mechanism, or is only periodically updated, we recommend that you use the board ID mechanism to list boards that your editor supports and notify users of any incompatibility issues. You can read the board ID as the first four characters of the devices USB serial number.
75+
If you write an editor that doesn't have an online update mechanism, or is only periodically updated, we recommend that you use the board ID mechanism to list boards that your editor supports and notify users of any incompatibility issues. You can read the board ID as the first four characters of the device's USB serial number.
7576

7677
### Table of board IDs
7778

@@ -84,7 +85,7 @@ If you write an editor that doesn’t have an online update mechanism, or is onl
8485
For example, if you do not yet support the microphone on the latest board revision (board ID 9904), you can notify users of the compatibility issues within the editor, rather than failing silently and providing a program that does not work.
8586

8687
**MicroPython**
87-
In the case of editors that use MicroPython, we propose the following approach which we introduced for the motion sensor update and beleive still works.
88+
In the case of editors that use MicroPython, we propose the following approach which we introduced for the motion sensor update and believe still works.
8889

8990
If an unknown micro:bit version is detected, but that micro:bit already contains MicroPython at a newer version than the one the editor knows about use the serial port to flash just the python script to the [filesystem](https://bbcmicrobitmicropython.readthedocs.io/en/latest/filesystem.html)
9091

@@ -97,11 +98,17 @@ This gives a teacher or facilitator who is unable to update their editors (for e
9798
The latest board revision introduces a superset of the Intel-Hex format that enables compatibility across processor variants. A Universal Hex is a file that contains the binary data for both micro:bit <span class="v1">v1</span> and micro:bit <span class="v2">V2</span>, in a format that the DAPLink can process to only write to memory the data relevant to its micro:bit board.
9899

99100
A **Universal Hex** hex file will work on a v1 or V2 board.
100-
A clear indication that you are working with this format is that a compiled .hex file will be ~1.8Mb as opposed to ~700Kb in size.
101+
A clear indication that you are working with this format is that a compiled .hex file will be ~1.8Mb instead of ~700Kb in size.
102+
103+
The following resources will help you implement **Universal Hex** support in your application:
101104

102-
A [Universal Hex JavaScript Library](https://github.com/microbit-foundation/microbit-universal-hex) has been written to implement the format and associated detailed [specification of the Universal Hex format](https://github.com/microbit-foundation/universal-hex/). Please [get in contact](mailto:support@microbit.org?subject=Request%20for%20access%20to%20Universal%20hex&20spec&body=Name%3A%0D%0A%0D%0AGitHub%20ID%3A) if you require access to the specification.
105+
* [Universal Hex JavaScript Library](https://github.com/microbit-foundation/microbit-universal-hex)
106+
* [Detailed specification of the Universal Hex format](https://github.com/microbit-foundation/universal-hex/)
107+
108+
† Please [get in contact](mailto:support@microbit.org?subject=Request%20for%20access%20to%20Universal%20hex&20spec&body=Name%3A%0D%0A%0D%0AGitHub%20ID%3A) if you require access to the specification.
103109

104110
### Hex format compatibility
111+
105112
The Universal Hex format has been developed to ensure the best experience for users when moving between board variants. There may be cases where it is not possible to support both boards, for example an accessory that is designed only to target the V2 board variant. In these cases, to ensure the best user experience when flashing a hex file to any board variant, the file should always include an error message to signify board incompatibility to the user. If we do not do this, it results in a silent failure, which can be very confusing to users.
106113

107-
We have created a [standalone error hex](/docs/software/assets/stand-alone-error-v1.hex) that can be combined with a V2 only hex to produce a Hex that will work on a V2 board, but error if used on a v1.You can read more about how this works on the [Hex format](../../software/hex-format/) page.
114+
We have created a [standalone error hex](/docs/software/assets/stand-alone-error-v1.hex) that can be combined with a V2 only hex to produce a Hex that will work on a V2 board, but error if used on a v1.You can read more about how this works on the [Hex format](../../software/hex-format/) page.

0 commit comments

Comments
 (0)